import React from 'react';
import config from 'config';
import constants from 'share/constants';
import {deepFullCopy, messages, queryCurrencyPrecision} from 'share/common';
import {
  Avatar, Popover, Badge, Tooltip
} from 'antd';
import configureStore from 'stores';

import moment from 'moment/moment';
import defaultExpenseTypeIcon from 'images/expense/default-expense-type.png';
import UserAuthViewer from 'components/template/user-auth-viewer/user-auth-viewer';

function getDepUrlAndSearchFrom() {
  const depComponent = [
    {
      type: 'input',
      id: 'deptCode',
      label: messages('components.key63'/* 部门编码 */),
      defaultValue: ''
    },
    {
      type: 'input',
      id: 'name',
      label: messages('components.key8'/* 部门名称 */),
      defaultValue: ''
    },
  ];
  const depComponentWithCompany = deepFullCopy(depComponent);
  depComponentWithCompany.push({
    type: 'list',
    id: 'companyId',
    label: messages('components.key777')/* 公司 */,
    listType: 'available_company',
    labelKey: 'name',
    valueKey: 'id',
    single: true
  });
  const depComponentWithCompanyUrl = '/api/DepartmentGroup/selectDept/enabled';
  const depComponentUrl = `/api/DepartmentGroup/selectDept/enabled?companyId=${configureStore.store.getState().login.company.id}`;
  if (configureStore.store.getState().setting.enableDepCompany === 'OPEN'
    && configureStore.store.getState().main.tenantMode) {
    // 可以选择公司
    return {
      url: depComponentWithCompanyUrl,
      searchForm: depComponentWithCompany
    };
  } if (configureStore.store.getState().setting.enableDepCompany === 'OPEN'
    && !configureStore.store.getState().main.tenantMode) {
    // 不能选择公司
    return {
      url: depComponentUrl,
      searchForm: depComponent
    };
  }
  // 不能选择公司
  return {
    url: depComponentWithCompanyUrl,
    searchForm: depComponent
  };

}

const chooserData = {
  // 选择某个公司下的人员,参数代表不查离职人
  // let params = {
  //   companyOID:"37f0c85b-1f1a-4694-b9da-eecb125e2fbf",// 可以传数组
  //   departmentOID: "37f0c85b-1f1a-4694-b9da-eecb125e2fbf",// 可以传数组
  //   corporationOID: "37f0c85b-1f1a-4694-b9da-eecb125e2fbf",// 可以传数组
  //   page: 0,
  //   size: 10,
  //   status: 1001,//不传代表只查询在职，1001也是在职，1002待离职员工，1003离职员工
  //   roleType: "TENANT",
  //   keyword: ""，
  //   isInactiveSearch :"true"//只查询没激活的员工，不传就查询所有的员工
  // }
  user: {
    title: messages('components.key3'/* 选择人员 */), // 选择人员
    url: `${config.baseUrl}/api/users/v3/search?roleType=TENANT`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1007')/*工号/姓名/手机/部门/邮箱/职位*/,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID',
      },
      {
        title: messages('components.key6'/* 姓名 */), // 姓名
        dataIndex: 'fullName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key7'/* 手机号 */), // 手机号
        dataIndex: 'mobile',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key189')/* 职位 */,
        dataIndex: 'title',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'userOID'
  },
  user_card: {
    title: messages('components.key3'/* 选择人员 */), // 选择人员
    url: `${config.baseUrl}/api/application/getAllBankCardUser`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1340'),/* 姓名/eid */
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('components.keyC002'/* EID */), // EID
        dataIndex: 'eid',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key6'/* 姓名 */), // 姓名
        dataIndex: 'fullName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'userOID'
  },
  user_permission: {
    title: messages('components.key3'/* 选择人员 */), // 选择人员
    url: `${config.baseUrl}/api/users/v3/search`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1002')/* 工号/姓名/手机号/部门/邮箱 */
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID',
      },
      {
        title: messages('components.key6'/* 姓名 */), // 姓名
        dataIndex: 'fullName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key7'/* 手机号 */), // 手机号
        dataIndex: 'mobile',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key965')/* 授权信息 */,
        dataIndex: 'userOID',
        render: (value, userInfo) => <UserAuthViewer userInfo={userInfo} />
      },
    ],
    key: 'userOID'
  },

  user_all: {
    title: messages('components.key3'/* 选择人员 */), // 选择人员
    url: `${config.baseUrl}/api/users/v3/search?roleType=TENANT`,
    searchForm: [
      {
        type: 'input', id: 'keyword',
        label: messages('components.key1007')/*工号/姓名/手机/部门/邮箱/职位*/,
        colSpan: 9
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID',
        width: '10%'
      },
      {
        title: messages('components.key6'/* 姓名 */), // 姓名
        dataIndex: 'fullName',
        width: '25%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key7'/* 手机号 */), // 手机号
        dataIndex: 'mobile',
        width: '25%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        width: '20%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key189')/* 职位 */,
        dataIndex: 'title',
        width: '20%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'userOID'
  },
  user_group: {
    title: messages('components.key552')/* '选择人员组' */,
    // url: `/api/user/groups/company`,/*wjk 注释：该接口不支持搜所 20180712*/
    url: '/api/user/groups/search?enabled=true',
    searchForm: [
      { type: 'input', id: 'name', label: messages('components.key1061')/* 编码/名称 */ }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'code', width: '30%' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'name',
        width: '30%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key12'/* 描述 */),
        dataIndex: 'comment',
        width: '30%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  budget_journal_structure: {
    title: messages('components.key627'/* 选择预算日记账所需的预算表 */), // 选择预算日记账所需的预算表',
    url: `${config.budgetUrl}/api/budget/journal/type/assign/structures/queryStructure`,
    searchForm: [
      { type: 'input', id: 'structureCode', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'structureName', label: messages('components.key10'/* 名称 */) },
      {
        type: 'select',
        id: 'structureCodeFrom',
        label: messages('components.key14'/* 编码从 */),
        options: [],
        getUrl: `${config.budgetUrl}/api/budget/structures/queryAll`,
        labelKey: 'structureCode',
        valueKey: 'structureCode',
        method: 'get',
        renderOption: data => `${data.structureCode}(${data.structureName})`
      },
      {
        type: 'select',
        id: 'structureCodeTo',
        label: messages('components.key15'/* 编码至 */),
        options: [],
        getUrl: `${config.budgetUrl}/api/budget/structures/queryAll`,
        labelKey: 'structureCode',
        valueKey: 'structureCode',
        method: 'get',
        renderOption: data => `${data.structureCode}(${data.structureName})`
      }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'structureCode', width: '45%' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'structureName',
        width: '55%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'structureCode'
  },
  budget_journal_item: {
    title: '选择预算日记账所需的预算项目',
    url: `${config.budgetUrl}/api/budget/journal/type/assign/items/queryItem`,
    searchForm: [
      { type: 'input', id: 'itemCode', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'itemName', label: messages('components.key10'/* 名称 */) },
      {
        type: 'select',
        id: 'itemCodeFrom',
        label: messages('components.key14'/* 编码从 */),
        options: [],
        getUrl: `${config.budgetUrl}/api/budget/items/find/all`,
        labelKey: 'itemCode',
        valueKey: 'itemCode',
        method: 'get',
        renderOption: data => `${data.itemCode}(${data.itemName})`
      },
      {
        type: 'select',
        id: 'itemCodeTo',
        label: messages('components.key15'/* 编码至 */),
        options: [],
        getUrl: `${config.budgetUrl}/api/budget/items/find/all`,
        labelKey: 'itemCode',
        valueKey: 'itemCode',
        method: 'get',
        renderOption: data => `${data.itemCode}(${data.itemName})`
      }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'itemCode', width: '45%' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'itemName',
        width: '55%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'itemCode'
  },
  budget_journal_company: {
    title: messages('components.key628'/* 选择预算日记账所需的公司 */),
    url: `${config.budgetUrl}/api/budget/journal/type/assign/companies/filter`,
    searchForm: [
      { type: 'input', id: 'companyCode', label: messages('components.key17'/* 公司代码 */) },
      { type: 'input', id: 'companyName', label: messages('components.key18'/* 公司名称 */) },
      { type: 'input', id: 'companyCodeFrom', label: messages('components.key19'/* 公司代码从 */) },
      { type: 'input', id: 'companyCodeTo', label: messages('components.key20'/* 公司代码至 */) },
    ],
    columns: [
      { title: messages('components.key17'/* 公司代码 */), dataIndex: 'code' },
      {
        title: messages('components.key18'/* 公司名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },

    ],
    key: 'id'
  },
  budget_item: {
    title: messages('components.key629'/* 选择预算项目 */),
    url: `${config.budgetUrl}/api/budget/items/query`,
    searchForm: [
      { type: 'input', id: 'itemCode', label: messages('components.key11'/* 编码 */) },
      {
        type: 'select',
        id: 'itemCodeFrom',
        label: messages('components.key14'/* 编码从 */),
        options: [],
        getUrl: `${config.budgetUrl}/api/budget/items/find/all`,
        labelKey: 'itemCode',
        valueKey: 'itemCode',
        method: 'get',
        renderOption: data => `${data.itemCode}(${data.itemName})`
      },
      {
        type: 'select',
        id: 'itemCodeTo',
        label: messages('components.key15'/* 编码至 */),
        options: [],
        getUrl: `${config.budgetUrl}/api/budget/items/find/all`,
        labelKey: 'itemCode',
        valueKey: 'itemCode',
        method: 'get',
        renderOption: data => `${data.itemCode}(${data.itemName})`
      },
      {type: 'input', id: 'itemName', label: messages('components.key10'/* 名称 */)}
    ],
    columns: [
      {
        title: messages('components.key11'/* 编码 */),
        dataIndex: 'itemCode',
        width: '45%',
        render: (value, record) => (
          <span style={{ color: !record.isEnabled ? '#cecece' : '' }}>{ value }</span>
        )
      },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'itemName',
        width: '55%',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500}}>
            <span style={{ color: !record.isEnabled ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      }
    ],
    key: 'id'
  },
  // 部门关联公司可选列表
  department_connect_company: {
    title: messages('components.key23'/* 选择公司 */), // 选择公司
    url: '/api/company/search/by/department',
    searchForm: [

    ],
    columns: [
      {
        title: messages('components.key17'/* 公司代码 */), // 公司代码
        dataIndex: 'companyCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key18'/* 公司名称 */), // 公司名称
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },

    ],
    key: 'id'
  },
  // 集团下所有表单
  available_forms: {
    title: messages('components.key66')/* 选择表单 */,
    url: '/api/custom/forms/by/tenant',
    searchForm: [
      {
        type: 'input',
        id: 'formName',
        colSpan: 12,
        label: messages('components.key67')/* 表单名称 */
      },
      {
        type: 'select',
        id: 'entityTypeList',
        colSpan: 12,
        label: messages('components.key103')/* 表单类型 */,
        options: [
          {label: messages('components.key695')/* 申请单 */, value: 1001},
          {label: messages('components.key192')/* 报销单 */, value: 1002},
          {label: messages('components.key1008')/* 借款单 */, value: 3001},
          {label: messages('components.key1009')/* 通用 */, value: 4001}
        ]
      },
      {
        type: 'select',
        id: 'setOfBooksId',
        colSpan: 12,
        label: messages('components.key1010')/* 所属账套 */,
        options: [],
        getUrl: '/api/setOfBooks/by/tenant',
        labelKey: 'setOfBooksName',
        valueKey: 'id',
        method: 'get',
        renderOption: data => `${data.setOfBooksName}`
      },
      {
        type: 'list',
        id: 'companyId',
        colSpan: 12,
        label: messages('components.key1011')/* 所属公司 */,
        single: true,
        labelKey: 'name',
        valueKey: 'id',
        listType: 'available_company',
        listExtraParams: {enabled: true}
      }
    ],
    columns: [
      {
        title: messages('components.key67')/* 表单名称 */,
        dataIndex: 'formName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key103')/* 表单类型 */,
        dataIndex: 'entityType',
        render: (value) => {
          let entityStr = '';
          switch (value) {
            case 1001:
              entityStr = messages('components.key695')/* 申请单 */;
              break;
            case 1002:
              entityStr = messages('components.key192')/* 报销单 */;
              break;
            case 3001:
              entityStr = messages('components.key1008')/* 借款单 */;
              break;
            case 4001:
              entityStr = messages('components.key1009')/* 通用 */;
              break;
          }
          return <Popover placement="topLeft" content={entityStr} overlayStyle={{maxWidth: 500}}>{entityStr}</Popover>;
        }
      },
      {
        title: messages('components.key1010')/* 所属账套 */,
        dataIndex: 'setOfBooksName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key1011')/* 所属公司 */,
        dataIndex: 'companyName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'formOID'
  },
  available_company: {
    title: messages('components.key23'/* 选择公司 */), // 选择公司
    url: '/api/company/available',
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key852')/* 公司代码/名称 */ }
    ],
    columns: [
      {
        title: messages('components.key17'/* 公司代码 */), // 公司代码
        dataIndex: 'companyCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key18'/* 公司名称 */), // 公司名称
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },

    ],
    key: 'id'
  },
  permission_company: {
    title: messages('components.key23'/* 选择公司 */), // 选择公司
    url: '/api/authorization/policy/user/permission/company',
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key852')/* 公司代码/名称 */ }
    ],
    columns: [
      {
        title: messages('components.key17'/* 公司代码 */), // 公司代码
        dataIndex: 'companyCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key18'/* 公司名称 */), // 公司名称
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },

    ],
    key: 'id'
  },
  // 账套下公司
  available_company_setOfBooks: {
    title: messages('components.key23'/* 选择公司 */), // 选择公司
    url: '/api/refactor/companies/user/setOfBooks',
    searchForm: [
      {
        type: 'input',
        id: 'name',
        label: messages('components.key18'/* 公司名称 */)
      }
    ],
    columns: [
      {
        title: messages('components.key17'/* 公司代码 */), // 公司代码
        dataIndex: 'companyCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key18'/* 公司名称 */), // 公司名称
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },

    ],
    key: 'id'
  },
  // 表单管理中权限设置下选择费用
  available_expense: {
    title: messages('components.key24'/* 选择费用 */), // 选择费用
    url: '/api/expense/type/by/setOfBooks',
    searchForm: [
      {
        type: 'select',
        id: 'depth',
        label: messages('components.key608')/* 类型 */,
        options: [
          {label: messages('components.key35')/* 父类型 */, value: 1},
          {label: messages('components.key36')/* 子类型 */, value: 2}
        ]
      },
      {
        type: 'input',
        id: 'code',
        label: messages('components.key33')/* 费用编码 */
      },
      {
        type: 'input',
        id: 'name',
        label: messages('components.key25')/* 费用名称 */
      }
    ],
    columns: [
      {
        title: 'Icon', // 费用Icon
        dataIndex: 'iconURL',
        width: '10%',
        render: value => <div><img style={{ width: 30, height: 30 }} src={value} onError={e => e.target.src = defaultExpenseTypeIcon} /></div>
      },
      {
        title: messages('components.key33')/* 费用编码 */, // 费用编码
        dataIndex: 'code'
      },
      {
        title: messages('components.key25'/* 费用名称 */), // 费用名称
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key608')/* 类型 *//* 类型 */,
        dataIndex: 'depth',
        render: value => (value === 1 ? messages('components.key35')/* 父类型 */ : messages('components.key36'))/* 子类型 */
      },
      {
        title: messages('common.column.status')/* 状态 */,
        dataIndex: 'enabled',
        width: '10%',
        render: value => (
          <Badge status={value ? 'success' : 'error'} text={value ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      }
    ],
    key: 'expenseTypeOID'
  },
  // 表单管理多选值列表控件
  multi_cust_list: {
    title: messages('common.please.select'/* 请选择 */), // 请选择
    url: '/api/custom/enumerations',
    searchForm: [{
      type: 'input',
      id: 'keyword',
      label: messages('components.key833') /* 请输入名称搜索 */
    }],
    columns: [
      {
        title: messages('components.key835')/* 值名称 */,
        dataIndex: 'messageKey',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      // {
      //   title: messages('components.key612')/* 编码 */,
      //   dataIndex: 'code'
      // }
    ],
    key: 'value'
  },
  // 表单管理多选值列表控件 -- 麦当劳【出差地】【酒店星级】控件使用
  cust_list_overseas: {
    title: messages('common.please.select'/* 请选择 */), // 请选择
    url: '/api/custom/enumerations',
    searchForm: [],
    columns: [
      {
        title: messages('components.key10')/* 名称 */,
        dataIndex: 'messageKey',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'value'
  },
  // 表单管理多选值列表控件(去掉编码字段)
  multi_cust_list_no_code: {
    title: messages('common.please.select'/* 请选择 */), // 请选择
    url: '/api/custom/enumerations',
    searchForm: [{
      type: 'input',
      id: 'keyword',
      label: messages('components.key833') /* 请输入名称搜索 */
    }],
    columns: [
      {
        title: messages('components.key835')/* 值名称 */,
        dataIndex: 'messageKey',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'value'
  },
  // 表单管理中查现金事务分类
  payment_cash_type: {
    title: messages('components.key853')/* 选择报销类型 */,
    url: '/payment/api/cash/transaction/classes/query',
    searchForm: [
      {
        type: 'input',
        id: 'classCode',
        label: messages('components.key854')/* 报销类型代码 */
      },
      {
        type: 'input',
        id: 'description',
        label: messages('components.key855')/* 报销类型 */
      }
    ],
    columns: [
      {
        title: messages('components.key854')/* 报销类型代码 */,
        dataIndex: 'classCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key855')/* 报销类型 */,
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  // 表单管理中权限设置下选择借款类型
  available_loan_type: {
    title: messages('components.key692')/* 选择借款类型 */,
    url: '/payment/api/cash/transaction/classes/queryBySetOfBookId',
    searchForm: [
      {
        type: 'input',
        id: 'classCode',
        label: messages('components.key693')/* 借款类型代码 */
      },
      {
        type: 'input',
        id: 'description',
        label: messages('components.key694')/* 借款类型 */
      }
    ],
    columns: [
      {
        title: messages('components.key693')/* 借款类型代码 */,
        dataIndex: 'classCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key694')/* 借款类型 */,
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  // 选择补贴规则
  available_travel_rule: {
    title: messages('components.key26'/* 补贴规则 */), // 补贴规则
    url: '/api/travel/subsidies/rule/forms/withRule',
    searchForm: [
      {
        type: 'input',
        id: 'formName',
        label: messages('components.key27'/* 申请单名称 */)
      }
    ],
    columns: [
      {
        title: messages('components.key27'/* 申请单名称 */),
        dataIndex: 'formName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('common.column.status')/* 状态 */,
        dataIndex: 'formEnable',
        render: value => (
          <Badge status={value ? 'success' : 'error'} text={value ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      }
    ],
    key: 'formOID'
  },
  // 选择借款单可关联的单据
  available_related_form: {
    title: messages('components.key695')/* 申请单 */,
    url: '/api/custom/forms/loan/reference',
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key27'/* 申请单名称 */)
      },
      {
        type: 'input',
        id: 'remarkKeyword',
        label: messages('common.remark')/* 备注 */
      },
      {
        type: 'select',
        id: 'formTypeList',
        label: messages('components.key29'/* 单据大类 */),
        options: [
          {label: messages('components.key30'/* 差旅申请单 */), value: 2001},
          {label: messages('components.key31'/* 费用申请单 */), value: 2002}
        ]
      }
    ],
    columns: [
      {
        title: messages('components.key27'/* 申请单名称 */),
        dataIndex: 'formName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('common.remark')/* 备注 */,
        dataIndex: 'remark',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('common.column.status')/* 状态 */,
        dataIndex: 'valid',
        render: value => (
          <Badge status={value ? 'success' : 'error'} text={value ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      }
    ],
    key: 'formOID'
  },
  // 选择创建申请单时可创建的借款单
  available_loan_form: {
    title: messages('components.key817')/* 选择借款单 */,
    url: '/api/custom/forms/loan/reference',
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key67')/* 表单名称 */
      },
      {
        type: 'input',
        id: 'remarkKeyword',
        label: messages('common.remark')/* 备注 */
      }
    ],
    columns: [
      {
        title: messages('components.key67')/* 表单名称 */,
        dataIndex: 'formName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('common.remark')/* 备注 */,
        dataIndex: 'remark',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('common.column.status')/* 状态 */,
        dataIndex: 'valid',
        render: value => (
          <Badge status={value ? 'success' : 'error'} text={value ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      }
    ],
    key: 'formOID'
  },
  select_relate_invoiceType: {
    title: messages('components.key686')/* 选择类型 */,
    url: '/api/expense/type/by/setOfBooks',
    searchForm: [
      {
        type: 'input',
        id: 'code',
        label: messages('components.key33'/* 费用编码 */), // 费用编码
      },
      {
        type: 'input',
        id: 'name',
        label: messages('components.key25'/* 费用名称 */)
      }
    ],
    columns: [
      {
        title: messages('components.key32'/* 图标 */), // 费用Icon
        dataIndex: 'iconURL',
        render: value => <div><img style={{width: 30, height: 30}} src={value} onError={e => e.target.src = defaultExpenseTypeIcon} /></div>
      },
      {
        title: messages('components.key33'/* 费用编码 */), // 费用编码
        dataIndex: 'code',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key25'/* 费用名称 */), // 费用名称
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key34'/* 类型 */), // 类型
        dataIndex: 'depth',
        render: value => (value === 1 ? messages('components.key35'/* 父类型 */) : messages('components.key36'/* 子类型 */))
      },
      {
        title: messages('common.column.status'/* 状态 */),
        dataIndex: 'enabled',
        render: enable => (
          <Badge
            status={enable ? 'success' : 'error'}
            text={enable ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      },
    ],
    key: 'id'
  },
  budget_item_type: {
    title: messages('components.key630'/* 预算项目类型 */),
    url: `${config.budgetUrl}/api/budget/itemType/query`,
    searchForm: [
      { type: 'input', id: 'itemTypeCode', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'itemTypeName', label: messages('components.key10'/* 名称 */) },
    ],
    columns: [
      {
        title: messages('components.key11'/* 编码 */),
        dataIndex: 'itemTypeCode',
        render: (value, record) => (
          <span style={{ color: !record.isEnabled ? '#cecece' : '' }}>{ value }</span>
        )
      },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'itemTypeName',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: !record.isEnabled ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      },
    ],
    key: 'id'
  },
  budget_item_budget: {
    title: messages('components.key629'/* 选择预算项目 */),
    url: `${config.budgetUrl}/api/budget/items/query`,
    searchForm: [
      { type: 'input', id: 'itemCode', label: messages('components.key11'/* 编码 */) }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'itemCode', width: '45%' },
      { title: messages('components.key10'/* 名称 */), dataIndex: 'itemName', width: '55%' }
    ],
    key: 'id'
  },
  budget_item_filter: {
    title: messages('components.key631'/* 选择当前项目组中未被添加的项目 */),
    searchForm: [
      { type: 'input', id: 'itemCode', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'itemName', label: messages('components.key10'/* 名称 */) },
      {
        type: 'select',
        id: 'itemCodeFrom',
        label: messages('components.key14'/* 编码从 */),
        options: [],
        renderOption: data => `${data.itemCode}(${data.itemName})`
      },
      {
        type: 'select',
        id: 'itemCodeTo',
        label: messages('components.key15'/* 编码至 */),
        options: [],
        renderOption: data => `${data.itemCode}(${data.itemName})`
      }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'itemCode', width: '25%' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'itemName',
        width: '40%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      { title: messages('components.key39'/* 类型 */), dataIndex: 'itemTypeName', width: '35%' }
    ],
    key: 'id'
  },
  select_cost_center_by_sobid: {
    title: messages('components.key570')/* 选择成本中心 */,
    url: '/api/cost/center/company',
    searchForm: [
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'code', width: '25%' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'name',
        width: '25%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  select_dimension: {
    title: messages('components.key632'/* 选择维度 */),
    url: '/api/cost/center/company',
    searchForm: [
      { type: 'input', id: 'code', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'name', label: messages('components.key10'/* 名称 */) },
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'code', width: '25%' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'name',
        width: '25%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key41'/* 公司级别 */),
        dataIndex: 'companyLevel',
        width: '25%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      { title: messages('components.key42'/* 系统级别 */), dataIndex: 'systemLevel', width: '25%' },
    ],
    key: 'id'
  },
  budget_journal_type: {
    title: messages('components.key43'/* 预算日记账类型 */),
    url: `${config.budgetUrl}/api/budget/journals/journalType/selectByInput`,
    searchForm: [
      { type: 'input', id: 'journalTypeCode', label: messages('components.key44'/* 预算日记账类型代码 */), },
      { type: 'input', id: 'journalTypeName', label: messages('components.key45'/* 预算日记账类型名称 */), },
    ],
    columns: [
      { title: messages('components.key44'/* 预算日记账类型代码 */), dataIndex: 'journalTypeCode' },
      {
        title: messages('components.key45'/* 预算日记账类型名称 */),
        dataIndex: 'journalTypeName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  budget_versions: {
    title: messages('components.key46'/* 预算版本 */),
    url: `${config.budgetUrl}/api/budget/versions/query`,
    searchForm: [
      { type: 'input', id: 'versionCode', label: messages('components.key47'/* 预算版本代码 */) },
      { type: 'input', id: 'versionName', label: messages('components.key48'/* 预算版本名称 */) },
    ],
    columns: [
      { title: messages('components.key47'/* 预算版本代码 */), dataIndex: 'versionCode' },
      {
        title: messages('components.key48'/* 预算版本名称 */),
        dataIndex: 'versionName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  budget_scenarios: {
    title: messages('components.key49'/* 预算场景 */),
    url: `${config.budgetUrl}/api/budget/scenarios/query`,
    searchForm: [
      { type: 'input', id: 'scenarioCode', label: messages('components.key50'/* 预算场景代码 */) },
      { type: 'input', id: 'scenarioName', label: messages('components.key51'/* 预算场景名称 */) },
    ],
    columns: [
      { title: messages('components.key50'/* 预算场景代码 */), dataIndex: 'scenarioCode' },
      {
        title: messages('components.key51'/* 预算场景名称 */),
        dataIndex: 'scenarioName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  budget_item_group: {
    title: messages('components.key633'/* 选择预算项目组 */),
    url: `${config.budgetUrl}/api/budget/groups/query`,
    searchForm: [
      { type: 'input', id: 'itemGroupCode', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'itemGroupName', label: messages('components.key10'/* 名称 */) }
    ],
    columns: [
      {
        title: messages('components.key11'/* 编码 */),
        dataIndex: 'itemGroupCode',
        render: (value, record) => (
          <span style={{ color: !record.isEnabled ? '#cecece' : '' }}>{ value }</span>
        )
      },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'itemGroupName',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: !record.isEnabled ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      },
    ],
    key: 'id'
  },
  currency_by_setofbooks: {
    title: messages('components.key53'/* 币种 */),
    url: `${config.baseUrl}/api/currency/rate/list/all`,
    searchForm: [],
    columns: [
      { title: messages('components.key54'/* 币种名 */), dataIndex: 'currencyName' },
      { title: messages('components.key11'/* 编码 */), dataIndex: 'currencyCode' },
      { title: messages('components.key55'/* 汇率 */), dataIndex: 'rate' }
    ],
    key: 'currencyCode',
    listKey: 'rows'
  },
  currency: {
    title: messages('components.key53'/* 币种 */),
    url: '/api/currency/rate/list',
    searchForm: [],
    columns: [
      { title: messages('components.key54'/* 币种名 */), dataIndex: 'currencyName' },
      { title: messages('components.key11'/* 编码 */), dataIndex: 'currencyCode' },
      { title: messages('components.key55'/* 汇率 */), dataIndex: 'rate' }
    ],
    key: 'currencyCode',
    listKey: 'rows'
  },
  company_structure: {
    title: messages('components.key23'/* 选择公司 */),
    url: `${config.budgetUrl}/api/budget/structure/assign/companies/filter`,
    searchForm: [
      { type: 'input', id: 'companyCode', label: messages('components.key17'/* 公司代码 */) },
      { type: 'input', id: 'companyName', label: messages('components.key18'/* 公司名称 */) },
      { type: 'input', id: 'companyCodeFrom', label: messages('components.key19'/* 公司代码从 */) },
      { type: 'input', id: 'companyCodeTo', label: messages('components.key20'/* 公司代码至 */) }
    ],
    columns: [
      { title: messages('components.key17'/* 公司代码 */), dataIndex: 'code' },
      {
        title: messages('components.key18'/* 公司名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  report_type_add_vendor: {
    title: messages('components.key1001')/* 报销单类型 */,
    url: '/api/custom/forms/setOfBooks/all',
    searchForm: [
    ],
    columns: [
      { title: messages('components.key1001')/* 报销单类型 */, dataIndex: 'formName' },
    ],
    key: 'formOID'
  },
  auto_audit_add_company_no_legal: {
    title: messages('components.key56'/* 添加公司*/),
    url: '/api/company/deploy/cost/center/item',
    searchForm: [
      { type: 'input', id: 'name', label: messages('components.key58'/* 公司名称 */) },
    ],
    columns: [
      { title: messages('components.key57'/* 公司代码 */), dataIndex: 'companyCode' },
      {
        title: messages('components.key58'/* 公司名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  auto_audit_add_company: {
    title: messages('components.key56'/* 添加公司 */),
    url: '/api/company/by/term',
    searchForm: [
      { type: 'input', id: 'companyCode', label: messages('components.key57'/* 公司代码 */) },
      { type: 'input', id: 'name', label: messages('components.key58'/* 公司名称 */) },
      {
        type: 'select',
        options: [],
        id: 'legalEntityId',
        label: messages('components.key59'/* 法人实体 */), /* "法人实体" */
        getUrl: '/api/all/legalentitys',
        labelKey: 'entityName',
        valueKey: 'id',
        method: 'get',
        renderOption: option => `${option.entityName}`,
      },
    ],
    columns: [
      { title: messages('components.key57'/* 公司代码 */), dataIndex: 'companyCode' },
      {
        title: messages('components.key58'/* 公司名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('common.column.status'/* 状态 */),
        dataIndex: 'enabled',
        width: 120,
        render: enable => (
          <Badge
            status={enable ? 'success' : 'error'}
            text={enable ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      },
    ],
    key: 'id'
  },
  company_item: {
    title: messages('components.key23'/* 选择公司 */),
    url: `${config.budgetUrl}/api/budget/item/companies/query/filter`,
    searchForm: [
      { type: 'input', id: 'companyCode', label: messages('components.key17'/* 公司代码 */) },
      { type: 'input', id: 'companyName', label: messages('components.key18'/* 公司名称 */) },
      { type: 'input', id: 'companyCodeFrom', label: messages('components.key19'/* 公司代码从 */) },
      { type: 'input', id: 'companyCodeTo', label: messages('components.key20'/* 公司代码至 */) }
    ],
    columns: [
      { title: messages('components.key17'/* 公司代码 */), dataIndex: 'code' },
      {
        title: messages('components.key18'/* 公司名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  company_group: {
    title: messages('components.key634'/* 选择公司组 */),
    url: '/api/company/group/query/section/dto',
    searchForm: [
      { type: 'input', id: 'companyGroupCode', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'companyGroupName', label: messages('components.key10'/* 名称 */) },
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'companyGroupCode' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'companyGroupName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  // 开启了部门关联公司设置不一样,需要根据 redux 值 设置接口
  // let selectorItem = chooserData.selfGetter('department');
  selfGetter(name) {
    switch (name) {
      case 'department': {
        return {
          title: messages('components.key62'/* 选择部门  */), // 部门
          url: getDepUrlAndSearchFrom().url,
          searchForm: getDepUrlAndSearchFrom().searchForm,
          columns: [
            {
              title: messages('components.key63'/* 部门编码 */), // 部门编码
              dataIndex: 'custDeptNumber',
              width: '33%',
              render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
            },
            {
              title: messages('components.key8'/* 部门名称 */), // 部门名称
              dataIndex: 'name',
              width: '67%',
              render: (value, record) => {
                const {user} = configureStore.store.getState().login;
                let ownIdentification = '';
                if (user.departmentOID === record.departmentOid) {
                  ownIdentification = messages('components.key696')/* (我的) */;
                }
                return (React.Component.prototype.checkFunctionProfiles('department.full.path.disabled', [undefined, false])
                  ? (
                    <Popover
                      placement="topLeft"
                      overlayStyle={{maxWidth: 500}}
                      content={`${ownIdentification}${record.path}`}>
                      {ownIdentification}
                      {record.path}
                    </Popover>
                  ) : (
                    <Popover
                      placement="topLeft"
                      content={`${ownIdentification}${record.name}`}>
                      {ownIdentification}
                      {record.name}

                    </Popover>
                  ));
              }
            }
          ],
          key: 'departmentOid'
        };
        break;
      }
    }
  },
  department: {
    title: messages('components.key62'/* 选择部门  */), // 部门
    url: '/api/DepartmentGroup/selectDept/enabled',
    searchForm: [
      {
        type: 'input',
        id: 'deptCode',
        label: messages('components.key63'/* 部门编码 */),
        defaultValue: ''
      },
      {
        type: 'input',
        id: 'name',
        label: messages('components.key8'/* 部门名称 */),
        defaultValue: ''
      },
    ],
    columns: [
      {
        title: messages('components.key63'/* 部门编码 */), // 部门编码
        dataIndex: 'custDeptNumber',
        width: '33%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'name',
        width: '67%',
        render: (value, record) => {
          const {user} = configureStore.store.getState().login;
          let ownIdentification = '';
          if (user.departmentOID === record.departmentOid) {
            ownIdentification = messages('components.key696')/* (我的) */;
          }
          return (React.Component.prototype.checkFunctionProfiles('department.full.path.disabled', [undefined, false])
            ? (
              <Popover
                placement="topLeft"
                overlayStyle={{maxWidth: 500}}
                content={`${ownIdentification}${record.path}`}>
                {ownIdentification}
                {record.path}
              </Popover>
            ) : (
              <Popover
                placement="topLeft"
                content={`${ownIdentification}${record.name}`}>
                {ownIdentification}
                {record.name}

              </Popover>
            ));
        }
      }
    ],
    key: 'departmentOid'
  },
  department_group: {
    title: messages('components.key635'/* 选择部门组 */),
    url: '/api/DepartmentGroup/selectDepartmentGroupByInput',
    searchForm: [
      {
        type: 'input', id: 'deptGroupCode', label: messages('components.key11'/* 编码 */), defaultValue: ''
      },
      {
        type: 'input', id: 'name', label: messages('components.key10'/* 名称 */), defaultValue: ''
      },
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'deptGroupCode' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  version_company: {
    title: messages('components.key23'/* 选择公司 */),
    url: `${config.budgetUrl}/api/budget/version/assign/companies/query/filter`,
    searchForm: [
      { type: 'input', id: 'code', label: messages('components.key17'/* 公司代码 */) },
      { type: 'input', id: 'name', label: messages('components.key18'/* 公司名称 */) },
      { type: 'input', id: 'companyCodeFrom', label: messages('components.key65'/* 公司代码从 */) },
      { type: 'input', id: 'companyCodeTo', label: messages('components.key20'/* 公司代码至 */) }
    ],
    columns: [
      { title: messages('components.key17'/* 公司代码 */), dataIndex: 'code' },
      {
        title: messages('components.key18'/* 公司名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key12'/* 描述 */),
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  // 这个不是与 company_budget 一样？
  company: {
    title: messages('components.key23'/* 选择公司 */),
    url: '/api/company/by/condition',
    searchForm: [
      { type: 'input', id: 'companyCode', label: messages('components.key17'/* 公司代码 */) },
      { type: 'input', id: 'name', label: messages('components.key18'/* 公司名称 */) },
      { type: 'input', id: 'companyCodeFrom', label: messages('components.key19'/* 公司代码从 */) },
      { type: 'input', id: 'companyCodeTo', label: messages('components.key20'/* 公司代码至 */) }
    ],
    columns: [
      { title: messages('components.key17'/* 公司代码 */), dataIndex: 'companyCode' },
      {
        title: messages('components.key18'/* 公司名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },

    ],
    key: 'id'
  },
  company_budget: {
    title: messages('components.key23'/* 选择公司 */),
    url: '/api/company/by/condition',
    searchForm: [
      { type: 'input', id: 'companyCode', label: messages('components.key17'/* 公司代码 */) },
      { type: 'input', id: 'name', label: messages('components.key18'/* 公司名称 */) }
    ],
    columns: [
      { title: messages('components.key17'/* 公司代码 */), dataIndex: 'companyCode' },
      {
        title: messages('components.key18'/* 公司名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  form_budget: {
    title: messages('components.key66'/* 选择表单 */),
    url: '/api/custom/forms/budget/reference',
    searchForm: [
      {type: 'input', id: 'keyword', label: messages('components.key67'/* 表单名称 */)}
    ],
    columns: [
      {
        title: messages('components.key67'/* 表单名称 */),
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>,
        dataIndex: 'formName'
      }
    ],
    key: 'id'
  },
  // 通过成本中心id，弹窗选择成本中心项
  cost_center_item_by_id: {
    title: messages('components.key68'/* 成本中心 */),
    url: '/api/costcenter/items',
    searchForm: [{
      type: 'input',
      id: 'keyword',
      label: `${messages('components.key69'/* 成本中心名称 */)}/${messages('components.key70'/* 代码 */)}/${messages('components.key71'/* 经理 */)}`
    }],
    columns: [
      {
        title: messages('components.key72'/* 成本中心代码 */),
        dataIndex: 'code'
      },
      {
        title: messages('components.key69'/* 成本中心名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key71'/* 经理 */),
        dataIndex: 'managerFullName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('common.column.status'/* 状态 */),
        dataIndex: 'enabled',
        width: 120,
        render: enable => (
          <Badge
            status={enable ? 'success' : 'error'}
            text={enable ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      },
    ],
    key: 'id'
  },
  /* 这个配置文件修改谨慎，别的地方用到了 */
  cost_center_item: {
    title: messages('components.key68'/* 成本中心 */), // 成本中心
    url: '/api/my/cost/center/items/',
    // 成本中心名称"成本中心项名称／经理／编号
    searchForm: [
      {
        type: 'input',
        id: 'name',
        label: `${messages('components.key69'/* 成本中心名称 */)}/${messages('components.key71'/* 经理 */)}/${messages('components.key73'/* 编号 */)}`
      }
    ],
    columns: [
      {
        title: messages('components.key72'/* 成本中心代码 */), // 成本中心代码
        dataIndex: 'code'
      },
      {
        title: messages('components.key69'/* 成本中心名称 */), // 成本中心名称
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'costCenterItemOID'
  },
  expense_cost_center_item: { // 费用分摊用成本中心
    title: messages('components.key68'/* 成本中心 */), // 成本中心
    url: '/api/my/cost/center/items',
    // 成本中心名称"成本中心项名称／经理／编号
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: `${messages('components.key69'/* 成本中心名称 */)}/${messages('components.key72'/* 成本中心代码 */)}`
      }
    ],
    columns: [
      {
        title: messages('components.key72'/* 成本中心代码 */), // 成本中心代码
        dataIndex: 'code'
      },
      {
        title: messages('components.key69'/* 成本中心名称 */), // 成本中心名称
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }

    ],
    key: 'costCenterItemOID'
  },
  cost_center_group_class: {
    title: messages('components.key730')/* 成本中心组类别 */,
    url: '/api/cost/center/group/category/list',
    searchForm: [
      {
        type: 'select',
        id: 'setOfBooksId',
        label: messages('components.key184')/* 账套 */,
        options: [],
        method: 'get',
        valueKey: 'id',
        labelKey: 'setOfBooksName',
        getParams: {roleType: 'TENANT'},
        getUrl: '/api/setOfBooks/by/tenant'
      }, // 账套
      {
        type: 'input', id: 'costCenterGroupCategoryCode', label: messages('components.key731')/* 成本中心组类别代码 */, defaultValue: ''
      },
      {
        type: 'input', id: 'costCenterGroupCategoryName', label: messages('components.key732')/* 成本中心组类别名称 */, defaultValue: ''
      },
    ],
    columns: [
      {
        title: messages('components.key731')/* 成本中心组类别代码 */,
        dataIndex: 'code',
        render: text => <span>{text ? <Popover placement="topLeft" content={text} overlayStyle={{maxWidth: 500}}>{text}</Popover> : '-'}</span>
      },
      {
        title: messages('components.key732')/* 成本中心组类别名称 */,
        dataIndex: 'name',
        render: text => <span>{text ? <Popover placement="topLeft" content={text} overlayStyle={{maxWidth: 500}}>{text}</Popover> : '-'}</span>
      },
      {
        title: messages('components.key68')/* 成本中心 */,
        dataIndex: 'costCenterName',
        render: text => <span>{text ? <Popover placement="topLeft" content={text} overlayStyle={{maxWidth: 500}}>{text}</Popover> : '-'}</span>
      },
      {
        title: messages('setting.key199'/* 描述 */),
        dataIndex: 'description',
        render: text => <span>{text ? <Popover placement="topLeft" content={text} overlayStyle={{maxWidth: 500}}>{text}</Popover> : '-'}</span>
      },
    ],
    key: 'id'
  },
  cost_center: {
    title: messages('components.key68'/* 成本中心 */), // 成本中心
    url: '/api/cost/center/items/search',
    searchForm: [
      {
        type: 'select',
        id: 'costCenterId',
        label: messages('components.key68')/* 成本中心 */,
        options: [],
        getUrl: '/api/cost/center/company?page=0&size=25',
        labelKey: 'name',
        valueKey: 'id',
        method: 'get'
      },
      {
        type: 'input', id: 'costCenterItemName', label: messages('components.key183')/* 成本中心项名称 */, defaultValue: ''
      }
    ],
    columns: [
      {
        title: messages('components.key72'/* 成本中心代码 */), // 成本中心代码
        dataIndex: 'code'
      },
      {
        title: messages('components.key69'/* 成本中心名称 */), // 成本中心名称
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }

    ],
    key: 'id'
  },
  journal_line_department: {
    title: messages('components.key62'/* 选择部门 */), // 选择部门
    url: `${config.budgetUrl}/api/budget/journals/selectDepartmentsByCompanyAndTenant`,
    searchForm: [
      {
        type: 'input',
        id: 'deptCode',
        label: messages('components.key63'/* 部门编码 */), // 部门代码
        defaultValue: ''
      },
      {
        type: 'input',
        id: 'deptName',
        label: messages('components.key8'/* 部门名称 */), // 部门名称
        defaultValue: ''
      },
    ],
    columns: [
      {
        title: messages('components.key63'/* 部门编码 */), // 部门代码
        dataIndex: 'code'
      },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  department_budget: {
    title: messages('components.key62'/* 选择部门 */), // 选择部门
    url: '/api/DepartmentGroup/selectDept/enabled',
    searchForm: [
      {
        type: 'input', id: 'deptCode', label: messages('components.key63'/* 部门编码 */), defaultValue: ''
      },
      {
        type: 'input', id: 'name', label: messages('components.key8'/* 部门名称 */), defaultValue: ''
      },
    ],
    columns: [
      { title: messages('components.key63'/* 部门编码 */), dataIndex: 'custDeptNumber' },
      {
        title: messages('components.key8'/* 部门名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'departmentId'
  },
  cash_flow_item: {
    title: messages('components.key636'/* 选择现金流量项 */),
    url: `${config.payUrl}/api/cash/flow/items/query`,
    searchForm: [
      {
        type: 'input', id: 'flowCode', label: messages('components.key11'/* 编码 */), defaultValue: ''
      },
      {
        type: 'input', id: 'description', label: messages('components.key10'/* 名称 */), defaultValue: ''
      },
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'flowCode' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  'assign-transaction': {
    title: messages('components.key76'/* 分配现金事务 */),
    url: `${config.payUrl}/api/cash/transaction/classes/query`,
    searchForm: [
      {
        type: 'input', id: 'setOfBookId', label: messages('components.key77'/* 账套 */), defaultValue: ''
      },
      { type: 'input', id: 'classCode', label: messages('components.key78'/* 现金事务分类代码 */) },
      { type: 'input', id: 'description', label: messages('components.key79'/* 现金流量项描述 */) },
    ],
    columns: [
      { title: messages('components.key77'/* 账套 */), dataIndex: 'setOfBookId' },
      {
        title: messages('components.key80'/* 现金事务类型 */),
        dataIndex: 'typeCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key78'/* 现金事务分类代码 */),
        dataIndex: 'classCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key79'/* 现金流量项描述 */),
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  journal_item: {
    title: messages('components.key81'/* 预算项目 */),
    url: `${config.budgetUrl}/api/budget/journals/selectItemsByJournalTypeAndCompany`,
    searchForm: [
      {
        type: 'input', id: 'itemCode', label: messages('components.key82'/* 预算项目代码 */), defaultValue: ''
      },
      {
        type: 'input', id: 'itemName', label: messages('components.key83'/* 预算项目名称 */), defaultValue: ''
      },
    ],
    columns: [
      { title: messages('components.key82'/* 预算项目代码 */), dataIndex: 'itemCode' },
      {
        title: messages('components.key83'/* 预算项目名称 */),
        dataIndex: 'itemName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  user_budget: {
    title: messages('components.key3'/* 选择人员 */),
    url: '/api/select/user/by/name/or/code',
    searchForm: [
      { type: 'input', id: 'employeeID', label: messages('components.key5'/* 工号 */) },
      { type: 'input', id: 'fullName', label: messages('components.key6'/* 姓名 */) }
    ],
    columns: [
      { title: messages('components.key5'/* 工号 */), dataIndex: 'employeeID', width: '25%' },
      {
        title: messages('components.key6'/* 姓名 */),
        dataIndex: 'fullName',
        width: '75%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  budget_structure: {
    title: messages('components.key637'/* 预算表 */),
    url: `${config.budgetUrl}/api/budget/structures/query`,
    searchForm: [
      {
        type: 'input', id: 'structureCode', label: messages('components.key11'/* 编码 */), defaultValue: ''
      },
      {
        type: 'input', id: 'structureName', label: messages('components.key10'/* 名称 */), defaultValue: ''
      },
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'structureCode' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'structureName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  pre_payment_type: {
    title: messages('components.key638'/* 预付款单类型选择 */),
    url: `${config.prePaymentUrl}/api/cash/pay/requisition/types/query`,
    searchForm: [
      {
        type: 'input', id: 'typeCode', label: messages('components.key11'/* 编码 */), defaultValue: ''
      },
      {
        type: 'input', id: 'typeName', label: messages('components.key10'/* 名称 */), defaultValue: ''
      },
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'typeCode' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'typeName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },

    ],
    key: 'id'
  },
  bank_account: {
    title: messages('components.key86'/* 选择银行 */),
    url: '/api/cash/bank/user/defineds/query',
    searchForm: [
      {
        type: 'input', id: 'keyword', label: messages('components.key87'/* 银行名称 */), defaultValue: ''
      },
    ],
    columns: [
      {
        title: messages('components.key87'/* 银行名称 */),
        dataIndex: 'bankName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key88'/* 国家 */),
        dataIndex: 'countryName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key89'/* 城市 */),
        dataIndex: 'cityName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key90'/* 银行详细地址 */),
        dataIndex: 'address',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  select_authorization_user: {
    title: messages('components.key3'/* 选择人员 */),
    url: '/api/DepartmentGroup/get/users/by/department/and/company',
    searchForm: [
      {
        type: 'input', id: 'companyId', label: messages('components.key18'/* 公司名称 */), defaultValue: ''
      },
      {
        type: 'input', id: 'departmentId', label: messages('components.key8'/* 部门名称 */), defaultValue: ''
      },
      {
        type: 'input', id: 'userCode', label: messages('components.key91'/* 用户代码 */), defaultValue: ''
      },
      {
        type: 'input', id: 'userName', label: messages('components.key6'/* 姓名 */), defaultValue: ''
      }
    ],
    columns: [
      { title: messages('components.key91'/* 用户代码 */), dataIndex: 'userCode' },
      {
        title: messages('components.key6'/* 姓名 */),
        dataIndex: 'userName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'userId'
  },
  year: {
    title: messages('components.key92'/* 年度 */),
    url: '/api/periods/select/years/by/setOfBooksId',
    searchForm: [],
    columns: [
      { title: messages('components.key92'/* 年度 */), dataIndex: 'year' },
    ],
    key: 'year',
    isValue: true
  },
  period: {
    title: messages('components.key93'/* 期间 */),
    searchForm: [],
    url: '/api/periods/query/open/periods/by/setOfBook/id',
    columns: [
      { title: messages('components.key93'/* 期间 */), dataIndex: 'periodName' },
    ],
    key: 'id'
  },
  quarter: {
    title: messages('components.key94'/* 季度 */),
    searchForm: [],
    url: '/api/custom/enumerations/template/by/type',
    columns: [
      { title: messages('components.key94'/* 季度 */), dataIndex: 'messageKey' },
    ],
    key: 'id'
  },
  select_supplier_employee: {
    title: messages('components.key639'/* 选择收款方 */),
    url: '/prepayment/api/cash/prepayment/requisitionHead/getReceivablesByName',
    searchForm: [{
      type: 'input', id: 'name', label: messages('components.key96'/* 供应商或员工 */), defaultValue: ''
    }],
    columns: [
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ]
  },
  section: {
    title: messages('components.key97'/* 科目段 */),
    url: `${config.accountingUrl}/api/accounting/util/general/ledger/fields/segments/page`,
    searchForm: [
      { type: 'input', id: 'code', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'description', label: messages('components.key10'/* 名称 */) }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'code' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  contract_type: {
    title: messages('components.key640'/* 合同类型 */),
    url: `${config.contractUrl}/api/contract/type/contract/type/by/company`,
    searchForm: [
      { type: 'input', id: 'contractTypeCode', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'contractTypeName', label: messages('components.key10'/* 名称 */) },
      { type: 'input', id: 'contractCategory', label: messages('components.key99'/* 合同大类 */) }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'contractTypeCode' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'contractTypeName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key99'/* 合同大类 */),
        dataIndex: 'contractCategoryName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  source_transactions_data: {
    title: messages('components.key641'/* 来源事务-数据结构 */),
    url: `${config.accountingUrl}/api/accounting/util/general/ledger/fields/data/source`,
    searchForm: [],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'code' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  accounting_scenarios: {
    title: messages('components.key642'/* 添加核算场景 */),
    url: 'http://192.168.1.195:9998/api/generalLedgerSceneMapping/select/unassigned/scene',
    searchForm: [
      { type: 'input', id: 'glSceneCode', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'glSceneName', label: messages('components.key10'/* 名称 */) }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'glSceneCode' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'glSceneName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  requisition_type: {
    title: messages('components.key643'/* 关联表单类型 */),
    url: 'http://116.228.77.183:25299/api/custom/forms/company/my/available/all',
    searchForm: [
      {
        type: 'input', id: 'formType', label: messages('components.key103'/* 表单类型 */), defaultValue: 107
      },
      { type: 'input', id: 'sectionName', label: messages('components.key10'/* 名称 */) }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'sectionCode' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'sectionName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  select_application: {
    title: messages('components.key695')/* 申请单 */,
    url: '/api/applications/v3/search',
    searchForm: [],
    columns: [
      { title: messages('components.key105'/* 提交时间 */), dataIndex: 'createdDate' },
      {
        title: messages('components.key106'/* 事由 */),
        dataIndex: 'title',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key107'/* 单号 */),
        dataIndex: 'businessCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key108'/* 总金额 */),
        dataIndex: 'totalAmount',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  add_employee: {
    title: messages('components.key109'/* 按条件添加员工 */),
    url: '/api/users/search/company/term',
    searchForm: [
      { type: 'input', id: 'keyword', label: messages('components.key110'/* 姓名／工号 */) },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */),
        dataIndex: 'employeeID',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key6'/* 姓名 */),
        dataIndex: 'fullName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key111'/* 法人实体名称 */),
        dataIndex: 'corporationName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key8'/* 部门名称 */),
        dataIndex: 'department',
        render: value => <Popover placement="topLeft" content={value.name} overlayStyle={{maxWidth: 500}}>{value.name}</Popover>
      }, ,
      {
        title: messages('components.key9'/* 职务 */),
        dataIndex: 'title',
        render: value => <Popover placement="topLeft" content={value || '-'} overlayStyle={{maxWidth: 500}}>{value || '-'}</Popover>
      },
      {
        title: messages('components.key112'/* 邮箱 */),
        dataIndex: 'email',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'id'
  },
  // 账套级来源事务
  sob_sourceTransaction: {
    title: messages('components.key645'/* 账套级来源事务 */),
    url: `${config.accountingUrl}/api/company/by/condition`,
    searchForm: [
      { type: 'input', id: 'sourceTransactionCode', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'description', label: messages('components.key10'/* 名称 */) }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'sourceTransactionCode' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },

  // 系统级来源事务(未添加)
  sys_sourceTransaction: {
    title: messages('components.key646'/* 系统级来源事务 */),
    url: `${config.accountingUrl}/api/general/source/transactions/all/codeValue`,
    searchForm: [
      { type: 'input', id: 'code', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'name', label: messages('components.key10'/* 名称 */) }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'code' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'code'
  },
  sobLineModel: {
    title: messages('components.key115'/* 未分配的系统级凭证模板 */),
    url: `${config.accountingUrl}/api/general/ledger/sob/journal/line/model/query/filter`,
    searchForm: [
      { type: 'input', id: 'journalLineModelCode', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'description', label: messages('components.key10'/* 名称 */) }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'journalLineModelCode' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  // 人员类型
  personTypeModel: {
    title: messages('components.key116'/* 选择人员类型 */), // 选择人员类型
    url: '/api/custom/enumeration/system/by/type/condition',
    searchForm: [
      {
        type: 'input',
        id: 'codeFrom',
        label: messages('components.key14'/* 编码从 */)
      },
      {
        type: 'input',
        id: 'codeTo',
        label: messages('components.key15'/* 编码至 */)
      },
      {
        type: 'input',
        id: 'value',
        label: messages('components.key11'/* 编码 */)
      },
    ],
    columns: [
      {
        title: messages('components.key11'/* 编码 */), // 编码
        dataIndex: 'value',
        width: '40%'
      },
      {
        title: messages('components.key10'/* 名称 */), // 名称
        dataIndex: 'messageKey',
        width: '60%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'value'
  },
  // 人员职务
  personDutyModel: {
    title: messages('components.key117'/* 选择人员职务 */), // 选择人员职务
    url: '/api/custom/enumeration/system/by/type/condition',
    searchForm: [
      {
        type: 'input',
        id: 'codeFrom',
        label: messages('components.key14'/* 编码从 */)
      },
      {
        type: 'input',
        id: 'codeTo',
        label: messages('components.key15'/* 编码至 */)
      },
      {
        type: 'input',
        id: 'value',
        label: messages('components.key11'/* 编码 */)
      },
    ],
    columns: [
      {
        title: messages('components.key11'/* 编码 */), // 编码
        dataIndex: 'value',
        width: '40%'
      },
      {
        title: messages('components.key10'/* 名称 */), // 名称
        dataIndex: 'messageKey',
        width: '60%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'value'
  },
  // 人员级别
  personRankModel: {
    title: messages('components.key118'/* 选择人员级别 */), // 选择人员级别
    url: '/api/custom/enumeration/system/by/type/condition',
    searchForm: [
      {
        type: 'input',
        id: 'codeFrom',
        label: messages('components.key14'/* 编码从 */)
      },
      {
        type: 'input',
        id: 'codeTo',
        label: messages('components.key15'/* 编码至 */)
      },
      {
        type: 'input',
        id: 'value',
        label: messages('components.key11'/* 编码 */)
      },
    ],
    columns: [
      {
        title: messages('components.key11'/* 编码 */), // 编码
        dataIndex: 'value',
        width: '40%'
      },
      {
        title: messages('components.key10'/* 名称 */), // 名称
        dataIndex: 'messageKey',
        width: '60%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'value'
  },
  accounting_elements: {
    title: messages('components.key647'/* 核算要素 */),
    url: `${config.accountingUrl}/api/accounting/util/general/ledger/fields/account/elements/page`,
    searchForm: [
      { type: 'input', id: 'code', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'description', label: messages('components.key12'/* 描述 */) }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'code' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'code'
  },
  deploy_company: {
    title: messages('components.key120'/* 分配公司 */),
    url: '/api/company/deploy/enumeration',
    searchForm: [
      { type: 'input', id: 'companyCode', label: messages('components.key17'/* 公司代码 */) },
      { type: 'input', id: 'name', label: messages('components.key18'/* 公司名称 */) }
    ],
    columns: [
      { title: messages('components.key17'/* 公司代码 */), dataIndex: 'companyCode' },
      {
        title: messages('components.key18'/* 公司名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'companyOID'
  },
  allotSetOfBookCompany: {
    title: messages('components.key120'/* 分配公司 */),
    url: '/api/company/by/condition',
    searchForm: [
      {type: 'input', id: 'name', label: messages('components.key18'/* 公司名称 */)},
      {type: 'input', id: 'companyCode', label: messages('components.key17'/* 公司代码 */)}
    ],
    columns: [
      {
        title: messages('components.key18'/* 公司名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {title: messages('components.key17'/* 公司代码 */), dataIndex: 'companyCode'},
      {
        title: messages('common.column.status'/* 状态 */),
        dataIndex: 'enabled',
        render: enable => (
          <Badge
            status={enable ? 'success' : 'error'}
            text={enable ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      },
    ],
    key: 'id'
  },
  selectInvoiceType: {
    title: messages('components.key121'/* 费用类型 */),
    url: '/api/expense/type/by/setOfBooks',
    searchForm: [
      {type: 'input', id: 'name', label: messages('components.key122'/* 费用类型名称 */)},
    ],
    columns: [
      {
        title: messages('components.key123'/* 图标 */),
        dataIndex: 'iconURL',
        render: value => <img src={value} onError={e => e.target.src = defaultExpenseTypeIcon} height="20" width="20" />
      },
      {title: messages('components.key122'/* 费用类型名称 */), dataIndex: 'name'},
      {
        title: messages('common.column.status'),
        dataIndex: 'enabled',
        render: isEnabled => (
          <Badge
            status={isEnabled ? 'success' : 'error'}
            text={isEnabled ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      },
    ],
    key: 'id'
  },
  invoice_budget: {
    title: messages('common.expense.type')/* 费用类型 */,
    url: '/api/expense/type/by/setOfBooks',
    searchForm: [
      {type: 'input', id: 'code', label: messages('components.key124'/* 费用类型编码 */), },
      {type: 'input', id: 'name', label: messages('components.key125'/* 费用类型名称 */), }
    ],
    columns: [
      {title: messages('components.key126'/* 费用类型代码 */), dataIndex: 'code'},
      {
        title: messages('components.key122'/* 费用类型名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key123'/* 图标 */),
        dataIndex: 'iconURL',
        render: value => <img src={value} onError={e => e.target.src = defaultExpenseTypeIcon} height="20" width="20" />
      },
      {
        title: messages('components.key127'/* 账套 */),
        dataIndex: 'setOfBooksName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  accounting_journalField: {
    title: messages('components.key648'/* 未选择过的核算分录段 */),
    url: `${config.accountingUrl}/api/accounting/util/general/ledger/fields/account/page`,
    searchForm: [
      { type: 'input', id: 'code', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'description', label: messages('components.key10'/* 名称 */) }
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'code' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  accounting_scene_elements_user: {
    title: messages('components.key649'/* 选择场景下的核算要素 */),
    url: `${config.accountingUrl}/api/account/general/ledger/scene/elements/query`,
    searchForm: [
      { type: 'input', id: 'input', label: `${messages('components.key11'/* 编码 */)}/${messages('components.key10'/* 名称 */)}` },
    ],
    columns: [
      { title: messages('components.key130'/* 核算要素代码 */), dataIndex: 'accountElementCode' },
      {
        title: messages('components.key131'/* 核算要素名称 */),
        dataIndex: 'accountElementName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      { title: messages('components.key132'/* 核算要素性质代码 */), dataIndex: 'mappingGroupCode' },
      {
        title: messages('components.key133'/* 核算要素性质名称 */),
        dataIndex: 'mappingGroupName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  accounting_scene_elements: {
    title: messages('components.key650'/* 场景下的核算要素 */),
    url: `${config.accountingUrl}/api/account/general/ledger/scene/elements/queryAll/page`,
    searchForm: [
      { type: 'input', id: 'code', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'description', label: messages('components.key10'/* 名称 */) },
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'code' },
      { title: messages('components.key10'/* 名称 */), dataIndex: 'description' },
    ],
    key: 'code'
  },
  segment_map: {
    title: messages('components.key776')/* 选择科目 */,
    url: '/api/accounts/query/setOfBooks/id',
    searchForm: [
      { type: 'input', id: 'accountCode', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'accountName', label: messages('components.key10'/* 名称 */) },
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'accountCode' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'accountName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  data_source_fields: {
    title: messages('components.key135'/* 根据来源事务代码获取来源事务数据结构下的明细字段 */),
    url: `${config.localUrl}/api/accounting/util/general/ledger/fields/data/source/fields`,
    searchForm: [
      { type: 'input', id: 'code', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'description', label: messages('components.key10'/* 名称 */) },
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'code' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'code'
  },
  data_source_fields_dataRules: {
    title: messages('components.key651'/* 源事务数据结构下的明细字段 */),
    url: `${config.accountingUrl}/api/accounting/util/general/ledger/fields/data/source/fields`,
    searchForm: [
      { type: 'input', id: 'code', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'description', label: messages('components.key10'/* 名称 */) },
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'code' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'code'
  },
  vendor_type: {
    title: messages('components.key137'/* 供应商类型 */), // 供应商类型
    url: '/supplier/api/ven/type/query',
    searchForm: [
      { type: 'input', id: 'code', label: messages('components.key138'/* 供应商类型代码 */) }, // 供应商类型代码
      { type: 'input', id: 'name', label: messages('components.key139'/* 供应商类型名称 */) }, // 供应商类型名称
    ],
    columns: [
      { title: messages('components.key138'/* 供应商类型代码 */), dataIndex: 'vendorTypeCode' },
      {
        title: messages('components.key139'/* 供应商类型名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  sqlAPI: {
    title: '取至API',
    url: `${config.accountingUrl}/api/accounting/util/general/ledger/fields/custom/methods`,
    searchForm: [
      { type: 'input', id: 'code', label: '代码' },
      { type: 'input', id: 'description', label: '名称' },
    ],
    columns: [
      { title: messages('components.key11'/* 编码 */), dataIndex: 'code' },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'code'
  },
  participants: {
    title: messages('components.key3'/* 选择人员 */),
    url: `${config.baseUrl}/api/application/participantsList`,
    searchForm: [
      {type: 'input', id: 'keyword', label: messages('components.key1012')/* 工号/姓名/部门/职位 */}
    ],
    columns: [
      {title: messages('components.key5'/*工号*/), dataIndex: 'employeeID'},
      {title: messages('components.key6'/*姓名*/), dataIndex: 'fullName',
        render: value => {
          return <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
        }
        },
      {title: messages('mcd.english.name'/*英文名*/), dataIndex: 'firstName',
        render: (value, record) => {
          if (record.firstName && record.lastName) {
            return <Popover placement="topLeft" content={`${record.firstName} ${record.lastName}`} overlayStyle={{maxWidth: 500}}>{`${record.firstName} ${record.lastName}`}</Popover>
          }else {
            return '-'
          }
        }
      },
      {title: messages('components.key8'/*部门名称*/), dataIndex: 'departmentName',
        render: value => {
          return <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
        }
        },
      {title: messages('components.key9'/*职务*/), dataIndex: 'title',
        render: value => {
          return <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
        }
        },
    ],
    key: 'id'
  },
  // 启用法人
  corporation_entity: {
    title: messages('components.key140'/* 选择法人实体 */),
    url: '/api/v2/my/company/receipted/invoices',
    searchForm: [
      { type: 'input', id: 'keyword', label: messages('components.key111'/* 法人实体名称 */) }
    ],
    columns: [
      {
        title: messages('components.key111'/* 法人实体名称 */),
        dataIndex: 'companyName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key141'/* 银行 */),
        dataIndex: 'accountBank',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'companyReceiptedOID'
  },
  // 所有法人实体
  corporation_entity_all: {
    title: messages('components.key140'/* 选择法人实体 */),
    url: '/api/v2/all/company/receipted/invoices',
    searchForm: [],
    columns: [
      {
        title: messages('components.key111'/* 法人实体名称 */),
        dataIndex: 'companyName',
        render: (value, record) => (record.enable ? value : (
          <span>
            {value}
            <span style={{ color: '#959595' }}>
(
{messages('common.disabling')}
)
</span>
          </span>
        ))
      },
      { title: messages('components.key141'/* 银行 */), dataIndex: 'accountBank' }
    ],
    key: 'companyReceiptedOID'
  },
  deploy_company_by_carousel: { // 公告信息分配公司用
    title: messages('components.key120'/* 分配公司 */),
    url: '/api/company/deploy/carousel',
    searchForm: [
      { type: 'input', id: 'companyCode', label: messages('components.key17'/* 公司代码 */) },
      { type: 'input', id: 'name', label: messages('components.key18'/* 公司名称 */) }
    ],
    columns: [
      { title: messages('components.key17'/* 公司代码 */), dataIndex: 'companyCode' },
      {
        title: messages('components.key18'/* 公司名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },

    ],
    key: 'companyOID'
  },

  // 不加密的银行卡号
  bank_card: {
    title: messages('components.key652'/* 选择银行卡 */),
    url: '/api/contact/bank/account/enable',
    searchForm: [],
    columns: [
      {
        title: messages('components.key389')/* 开户名 */,
        dataIndex: 'bankAccountName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key87'/* 银行名称 */),
        dataIndex: 'branchName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key143'/* 银行卡号 */),
        dataIndex: 'bankAccountNo',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key966')/* 卡类型 */,
        dataIndex: 'bankAccountTypeName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'contactBankAccountOID'
  },
  // 加密的银行卡号
  bank_card_encryption: {
    title: messages('components.key652'/* 选择银行卡 */),
    url: '/api/contact/bank/account/enable',
    searchForm: [],
    columns: [
      {
        title: messages('components.key389')/* 开户名 */,
        dataIndex: 'bankAccountName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key87'/* 银行名称 */),
        dataIndex: 'branchName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key143'/* 银行卡号 */),
        dataIndex: 'originalBankAccountNo',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key966')/* 卡类型 */,
        dataIndex: 'bankAccountTypeName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'contactBankAccountOID'
  },
  booker: {
    title: messages('components.key144'/* 选择订票专员 */),
    url: '/api/travel/booker/get/bookers',
    searchForm: [
      { type: 'input', id: 'name', label: messages('components.key6'/* 姓名 */) },
    ],
    columns: [
      { title: messages('components.key6'/* 姓名 */), dataIndex: 'fullName' },
      { title: messages('components.key5'/* 工号 */), dataIndex: 'employeeID' },
      {
        title: messages('components.key8'/* 部门名称 */),
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key9'/* 职务 */),
        dataIndex: 'title',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'userOID'
  },
  my_request: {
    title: messages('components.key695')/* 申请单 */,
    url: '/api/applications/passed/search',
    searchForm: [
      { type: 'input', id: 'keyword', label: messages('common.matter')/* 事由 */ },
    ],
    columns: [
      // {
      //   title: messages('components.key146'/* 创建日期 */),
      //   dataIndex: 'createdDate',
      //   width: '15%',
      //   render: submittedDate => new Date(submittedDate).format('yyyy-MM-dd')
      // },
      {
        title: messages('common.matter')/* 事由 */,
        dataIndex: 'appRemark',
        width: '20%',
        render: (value, record) => {
  //         if (record.remark) {
  //           if (record.title) {
  //             return (
  //               <Popover overlayStyle={{maxWidth: 500}} content={`${record.title}/${record.remark}`}>
  //                 {record.title}
  // /
  // {record.remark}
  //               </Popover>
  //             );
  //           }
  //           return <Popover overlayStyle={{maxWidth: 500}} content={record.remark}>{record.remark}</Popover>;

  //         }
  //         return record.title ? <Popover overlayStyle={{maxWidth: 500}} content={record.title}>{record.title}</Popover> : '-';
        return value ? <Popover overlayStyle={{maxWidth: 500}} content={record.appRemark}>{record.appRemark}</Popover> : '-';
        }
      },
      // {
      //   title: messages('components.key147'/* 申请单号 */),
      //   dataIndex: 'businessCode',
      //   width: '15%',
      //   render: value => (value ? <Popover content={value}>{value}</Popover> : '-')
      // },
      {
        title: messages('components.key1359')/* 预算金额 */,
        dataIndex: 'totalAmount',
        width: '15%',
        render: (value, record) => React.Component.prototype.filterMoney(record.originCurrencyTotalAmount, queryCurrencyPrecision(record.currencyCode))
      },
      {
        title: messages('components.key1360'/* 参与人员 */),
        dataIndex: 'participant',
        width: '15%',
        render: (value, record) => {
          const applicationParticipants = [];
          record.applicationParticipants.map((item) => {
            applicationParticipants.push(item.fullName);
          });
          applicationParticipants.indexOf(record.applicantName) && (applicationParticipants.push(record.applicantName));
          const show = applicationParticipants.join(',');
          // return <Popover overlayStyle={{maxWidth: 500}} placement="topLeft" content={show}>{show}</Popover>;
          return value ? <Popover overlayStyle={{maxWidth: 500}} placement="topLeft" content={value}>{value}</Popover> : show ? <Popover overlayStyle={{maxWidth: 500}} placement="topLeft" content={show}>{show}</Popover> : '-';
        }
      },
      {
        title: messages('approve.key118')/* 单据信息 */,
        dataIndex: 'applicantOID',
        width: '20%',
        render: (value, record) => {
          const show = record.businessCode + ', ' + record.applicantName + '创建于' + moment(record.createdDate).format('YYYY-MM-DD');
          return <Popover overlayStyle={{maxWidth: 500}} content={show}>{show}</Popover>
        }
      },
      // {
      //   title: messages('components.key733')/* 单据归属人 */,
      //   dataIndex: 'applicantOID',
      //   width: '15%',
      //   render: (value, record) => (
      //     value ? <Popover overlayStyle={{maxWidth: 500}} content={record.applicantName}>{record.applicantName}</Popover> : '-'
      //   )
      // },
      {
        title: messages('common.residueAmount')/* 剩余金额 */,
        dataIndex: 'residueAmount',
        width: '10%',
        render: (value, record) => React.Component.prototype.filterMoney(record.residueAmount, queryCurrencyPrecision(record.currencyCode))
      },
      // {
      //   title: messages('components.key1062')/* 已关联的报销单 */,
      //   dataIndex: 'referenceReportsCode',
      //   width: '10%',
      //   render: (value) => {
      //     if (value && value.length) {
      //       const businessCodes = [];
      //       value.map(item => businessCodes.push(`${item.businessCode}${item.isCurrentUser ? `(${messages('components.key1063')/* 本人 */})` : ''}`));
      //       const showValue = businessCodes.join(', ');
      //       return <Popover placement="topLeft" overlayStyle={{maxWidth: 410}} content={showValue}>{showValue}</Popover>;
      //     }
      //     return '-';

      //   }
      // }
    ],
    key: 'applicationOID'
  },

  // 选择账套
  select_set_of_books: {
    title: messages('components.key150'/* 选择账套 */), // 选择账套
    url: '/api/setOfBooks/query/dto?roleType=TENANT',
    searchForm: [
      {
        type: 'input',
        id: 'setOfBooksName',
        label: messages('components.key151'/* 账套名称 */)
      },
      {
        type: 'input',
        id: 'setOfBooksCode',
        label: messages('components.key152'/* 账套代码 */)
      }
    ],
    columns: [
      {
        title: messages('components.key151'/* 账套名称 */), // 账套名称
        dataIndex: 'setOfBooksName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key152'/* 账套代码 */), // 账套代码
        dataIndex: 'setOfBooksCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'setOfBooksId'
  },

  // 这个包含新老集团的：老集团是法人实体，新集团是公司，但是后端返回的结构都是一样，前端统一按照公司处理

  all_company_with_legal_entity: {
    title: messages('components.key23'/* 选择公司 */), // 选择公司
    url: '/api/company/name/oid/by/tenant',
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key18'/* 公司名称 */)
      }
    ],
    columns: [
      {
        title: messages('components.key18'/* 公司名称 */), // 公司名称
        dataIndex: 'companyName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'companyOID'
  },
  // 这个尽量使用all_company_with_legal_entity去代替，all_company，不要用这个了
  // 如果发现all_company_with_legal_entity列表字段缺少，就叫后端立即开发
  // 之后这个接口就删除了
  all_company: {
    title: messages('components.key153'/* 选择集团下的所有公司 */), // 选择集团下的所有公司
    url: '/api/company/all',
    searchForm: [],
    columns: [
      {
        title: messages('components.key18'/* 公司名称 */), // 公司名称
        dataIndex: 'name'
      },
      {
        title: messages('components.key154'/* 币种 */), // 币种
        dataIndex: 'baseCurrency'
      }
    ],
    key: 'companyOID'
  },
  company_bank_account: {
    title: messages('components.key653'/* 公司银行账户 */),
    url: '/api/companyBankAuth/get/own/info',
    searchForm: [],
    columns: [
      { title: messages('components.key156'/* 账户名称 */), dataIndex: 'bankAccountName' },
      {
        title: messages('components.key157'/* 账户账号 */),
        dataIndex: 'bankAccountNumber',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key87'/* 银行名称 */),
        dataIndex: 'bankName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'companyBank.bankAccountNumber'
  },
  enabled_company: {
    title: messages('components.key153'/* 选择集团下的所有公司 */), // 选择集团下的所有公司
    url: '/api/company/by/tenant',
    searchForm: [],
    columns: [
      {
        title: messages('components.key18'/* 公司名称 */), // 公司名称
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key154'/* 币种 */), // 币种
        dataIndex: 'baseCurrency',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'companyOID'
  },
  payment_type: {
    title: messages('components.key158'/* 付款方式 */),
    url: '/api/comapnyBankPayment/getByBankAccountId',
    searchForm: [],
    columns: [
      {
        title: messages('components.key158'/* 付款方式 */),
        dataIndex: 'description',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key159'/* 付款代码 */),
        dataIndex: 'paymentMethodCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key160'/* 付款类别 */),
        dataIndex: 'paymentMethodCategory',
        render: text => constants.getTextByValue(text, 'paymentMethodCategory')
      },
    ],
    key: 'paymentMethodCode'
  },
  select_parent_bank: {
    title: messages('components.key86'/* 选择银行 */),
    url: '/api/bank/infos/name',
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key87')/* 银行名称 */ },
    ],
    columns: [
      {
        title: messages('components.key87'/* 银行名称 */),
        dataIndex: 'bankName',
        render: (value, record) => {
          const recordInnerTag = {
            color: '#6caff0',
            border: 'solid 1px #b2d6fa',
            padding: '2px 4px 2px 4px',
            borderRadius: '2px',
            background: '#f0f6fc',
          };
          return (
            <Popover placement="topLeft" content={record.bankName} overlayStyle={{maxWidth: 500}}>
              {record.bankType === 'custom' ? <span style={recordInnerTag}>{messages('components.key678')/* 自定义 */}</span> : ''}
              {record.bankName}
            </Popover>
          );
        }
      },
    ],
    key: 'id'
  },
  // 获取自定义银行以及通用银行
  select_bank: {
    title: messages('components.key911')/* 选择支行 */,
    url: '/api/bank/infos/search',
    searchForm: [
      {
        type: 'list',
        id: 'bankName',
        label: messages('components.key86')/* 选择银行 */,
        listType: 'select_parent_bank',
        labelKey: 'bankName',
        valueKey: 'bankName',
        single: true
      },
      {
        type: 'input',
        id: 'bankBranchName',
        label: messages('components.key161'/* 支行名称 */)
      },
      {
        type: 'input',
        id: 'bankCode',
        label: messages('components.key162')/* 银行代码 */ },
      {
        type: 'input',
        id: 'openAccount',
        label: messages('components.key163'/* 开户地 */)
      },
      // task 13509  去掉下面三个搜索
      // {
      //   type: 'input',
      //   id: 'countryCode',
      //   label: messages('components.key164'/*国家编码*/)      },
      // {
      //   type: 'input',
      //   id: 'cityCode',
      //   label: messages('components.key165'/*城市编码*/)      },
      // {
      //   type: 'input',
      //   id: 'swiftCode',
      //   label: messages('components.key166'/*swift编码*/)      },
      // 默认查询全部启用的（大多数情况）
      // 还有两个参数可以额外传
      // { type: 'input', id: 'enable', label: '启用状态' },可以查询启用与禁用
      // { type: 'input', id: 'isAll', label: '是否查询所有' },可以返回全部启用与禁用的
    ],
    columns: [
      {
        title: messages('components.key161'/* 支行名称 */),
        dataIndex: 'bankBranchName',
        width: '50%',
        render: (value, record) => {
          const recordInnerTag = {
            color: '#6caff0',
            border: 'solid 1px #b2d6fa',
            padding: '2px 4px 2px 4px',
            borderRadius: '2px',
            background: '#f0f6fc',
          };
          return (
            <Popover placement="topLeft" content={record.bankBranchName} overlayStyle={{maxWidth: 500}}>
              {record.bankType === 'custom' ? <span style={recordInnerTag}>{messages('components.key678')/* 自定义 */}</span> : ''}
              {record.bankBranchName}
            </Popover>
          );
        }
      },
      {
        title: messages('components.key87'/* 银行名称 */),
        dataIndex: 'bankName',
        width: '25%',
        render: (value, record) => (<Popover placement="topLeft" content={record.bankName} overlayStyle={{maxWidth: 500}}>{record.bankName}</Popover>)
      },
      {
        title: messages('components.key162'/* 银行代码 */),
        width: '25%',
        dataIndex: 'bankCode'
      }
    ],
    key: 'id'
  },
  // 科目表定义，添加子科目（未被添加到科目下的子科目）
  subjectSelectorItem: {
    title: messages('components.key167'/* 子科目 */),
    url: '/api/accounts/hierarchy/child/query',
    searchForm: [
      { type: 'input', id: 'accountCode', label: messages('components.key168'/* 科目代码 */) },
      { type: 'input', id: 'accountName', label: messages('components.key169'/* 科目名称 */) },
    ],
    columns: [
      { title: messages('components.key168'/* 科目代码 */), dataIndex: 'accountCode' },
      {
        title: messages('components.key169'/* 科目名称 */),
        dataIndex: 'accountName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key170'/* 科目类型 */),
        dataIndex: 'accountTypeName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  // 报销单导入费用查询
  expense_report_invoice: {
    title: messages('components.key171'/* 选择费用 */),
    url: '/api/expense/report/invoices/import/search',
    searchForm: [{
      type: 'searcher',
      id: 'labelIds',
      label: messages('components.key1064')/* 费用标签 */,
      labelKey: 'name',
      valueKey: 'id'
    }, {
      type: 'searcher',
      id: 'expenseTypeIds',
      label: messages('common.expense.type')/* 费用类型 */,
      labelKey: 'expenseTypeName',
      valueKey: 'expenseTypeId',
      descriptionKey: 'expenseCategoryName'
    }, {
      type: 'select',
      id: 'invoiceOwner',
      label: messages('components.key1065')/* 归属人 */,
      options: [
        {label: messages('common.all')/* 全部 */, value: 'ALL'},
        {label: messages('components.key432')/* 我的 */, value: 'MY'},
        {label: messages('components.key1066')/* 他人 */, value: 'OTHER'},
      ],
      labelKey: 'description',
      valueKey: 'id'
    }, {
      type: 'datePicker',
      id: 'startEndDate',
      label: messages('common.happened.date')/* 发生日期 */,
      event: 'DATE_PICKER'
    }, {
      type: 'radio',
      id: 'dateOption',
      label: messages('common.date.range'),
      event: 'DATE_RANGE',
      defaultValue: 0,
      colSpan: 12,
      options: [
        {label: messages('common.all'), value: 0},
        {label: messages('components.key1067')/* 近一个月 */, value: 1},
        {label: messages('components.key1068')/* 近两个月 */, value: 2}
      ]
    }],
    columns: [
      {
        title: messages('common.expense.type')/* "费用类型" */,
        dataIndex: 'expenseTypeName',
        render: value => <Popover content={value}>{value}</Popover>
      },
      {
        title: messages('common.date')/* "日期" */,
        dataIndex: 'createdDate',
        width: 100,
        render:
          createdDate => new Date(createdDate).format('yyyy-MM-dd')
      },
      { title: messages('common.currency')/* "币种" */, dataIndex: 'invoiceCurrencyCode', width: 60 },
      { title: messages('common.amount')/* "金额" */, dataIndex: 'amount', render: (value, record) => React.Component.prototype.filterMoney(value) },
      { title: messages('common.currency.rate')/* "汇率" */, dataIndex: 'actualCurrencyRate', width: 60 },
      { title: messages('common.base.currency.amount')/* "本位币金额" */, dataIndex: 'baseAmount', render:(value, record) => React.Component.prototype.filterMoney(value) },
      {
        title: messages('components.key734')/* 费用归属人 */,
        dataIndex: 'owner',
        render: (value, record) => {
          let showValue = value && value.fullName;
          if (showValue && record.reimbursementUserOID && record.ownerOID && record.reimbursementUserOID !== record.ownerOID) { showValue += `（${messages('components.key836')/* 已转交 */}：${record.reimbursementUserName}）`; }
          return showValue ? <Popover content={showValue}>{showValue}</Popover> : '-';
        }
      },
      {
        title: messages('common.comment')/* "备注" */,
        dataIndex: 'comment',
        render:
        value => (value ? <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover> : '-')
      }
    ],
    key: 'invoiceOID',
    listKey: 'rows'
  },
  // 预算用的新版货币接口
  new_currency: {
    title: messages('components.key53'/* 币种 */),
    url: '/api/currency/rate/list',
    searchForm: [],
    columns: [
      {
        title: messages('components.key54'/* 币种名 */),
        dataIndex: 'currencyName',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: !record.enable ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      },
      {
        title: messages('components.key11'/* 编码 */),
        dataIndex: 'currencyCode',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: !record.enable ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      },
      {
        title: messages('components.key55'/* 汇率 */),
        dataIndex: 'rate',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: !record.enable ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      }
    ],
    key: 'currencyRateOid',
    listKey: 'rows'
  },
  // 预算余额方案用的货币接口
  currency_budget: {
    title: messages('components.key53'/* 币种 */),
    url: '/api/currency/rate/list',
    searchForm: [],
    columns: [
      {
        title: messages('components.key54'/* 币种名 */),
        dataIndex: 'currencyName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key11'/* 编码 */),
        dataIndex: 'currencyCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'currencyCode',
    listKey: 'rows'
  },
  // 预算余额方案定义用的货币接口
  base_currency: {
    title: messages('components.key53'/* 币种 */),
    url: '/api/currency/rate/list',
    searchForm: [],
    columns: [
      {
        title: messages('components.key54'/* 币种名 */),
        dataIndex: 'currencyName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key11'/* 编码 */),
        dataIndex: 'currencyCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key55'/* 汇率 */),
        dataIndex: 'rate',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'currencyCode',
    listKey: 'rows'
  },
  /* "批量分配公司" */
  batch_allot_company: {
    title: messages('components.key172'/* 批量分配公司 */),
    url: '/api/company/deploy/levels',
    searchForm: [
      {
        type: 'select',
        options: [],
        id: 'companyLevelId',
        label: messages('components.key173'/* 公司级别 */), /* "公司级别" */
        getUrl: '/api/companyLevel/selectByTenantId',
        labelKey: 'description',
        valueKey: 'id',
        method: 'get',
        renderOption: option => `${option.description}`,
      },
      {
        type: 'select',
        options: [],
        id: 'legalEntityId',
        label: messages('components.key59'/* 法人实体 */), /* "法人实体" */
        getUrl: '/api/all/legalentitys',
        labelKey: 'entityName',
        valueKey: 'id',
        method: 'get',
        renderOption: option => `${option.entityName}`,
      },
      { type: 'input', id: 'companyCode', label: messages('components.key174'/* 公司代码 */) },
      {
        type: 'input',
        id: 'name',
        label: messages('components.key175'/* 公司名称 */),
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      { type: 'input', id: 'companyCodeFrom', label: messages('components.key176'/* 公司代码从 */) },
      { type: 'input', id: 'companyCodeTo', label: messages('components.key177'/* 公司代码至 */) },
    ],
    columns: [
      {
        title: messages('components.key174'/* 公司代码 */),
        dataIndex: 'companyCode',
        render: text => (
          <Tooltip
            title={text}
            style={{width: '100%'}}
            placement="topLeft"
            getPopupContainer={triggerNode => triggerNode.parentNode}>
            {text}
          </Tooltip>
        )
      },
      {
        title: messages('components.key175'/* 公司名称 */),
        dataIndex: 'name',
        render: text => (
          <Tooltip
            title={text}
            style={{width: '100%'}}
            placement="topLeft"
            getPopupContainer={triggerNode => triggerNode.parentNode}>
            {text}
          </Tooltip>
        )
      },

    ],
    key: 'id'
  },
  // 通过账套选择成本中心（父级成本中心，是没有关联过的，且是启用的）
  select_cost_center_by_sob: {
    title: messages('components.key570')/* 选择成本中心 */,
    url: '/api/cost/centers/by/setofbooks/filter',
    searchForm: [
    ],
    columns: [
      {
        // 成本中心名称
        title: messages('setting.key353'/* 成本中心名称 */),
        dataIndex: 'name',
        width: '40%',
        render: text => <span>{text ? <Popover placement="topLeft" content={text} overlayStyle={{maxWidth: 500}}>{text}</Popover> : '-'}</span>
      },
      {
        // 编码
        title: messages('setting.key198'/* 编码 */),
        dataIndex: 'code',
        width: '20%',
        render: text => <span>{text ? <Popover placement="topLeft" content={text} overlayStyle={{maxWidth: 500}}>{text}</Popover> : '-'}</span>
      },
      {
        // 状态
        title: messages('setting.key354'/* 状态 */),
        dataIndex: 'enabled',
        width: '20%',
        render: enabled => (
          <Badge
            status={enabled ? 'success' : 'error'}
            text={enabled ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      },
    ],
    key: 'code'
  },
  // /*"添加成本中心组"*/
  add_cost_center_group: {
    title: messages('components.key178'/* 关联成本中心项 */),
    url: '/api/cost/center/group/assign/items/list',
    searchForm: [
      { type: 'input', id: 'costCenterItemCodeStart', label: messages('components.key179'/* 成本中心项代码从 */)},
      { type: 'input', id: 'costCenterItemCodeEnd', label: messages('components.key180'/* 成本中心项代码至 */)},
      { type: 'input', id: 'costCenterItemNameOrCode', label: messages('components.key181'/* 成本中心项名称/代码 */) },
    ],
    columns: [
      {
        title: messages('components.key69'/* 成本中心名称 */),
        dataIndex: 'costCenterName',
        render: text => (
          <Tooltip
            title={text}
            style={{width: '100%'}}
            placement="topLeft"
            overlayStyle={{maxWidth: 200, whiteSpace: 'pre-wrap'}}>
            {text}
          </Tooltip>
        )
      }, // 成本中心名称
      {
        title: messages('components.key182'/* 成本中心项代码 */),
        dataIndex: 'costCenterItemCode',
        render: text => (
          <Tooltip
            title={text}
            style={{width: '100%'}}
            placement="topLeft"
            overlayStyle={{maxWidth: 200, whiteSpace: 'pre-wrap'}}>
            {text}
          </Tooltip>
        )
      }, // 成本中心项代码
      {
        title: messages('components.key183'/* 成本中心项名称 */),
        dataIndex: 'costCenterItemName',
        render: text => (
          <Tooltip
            title={text}
            style={{width: '100%'}}
            placement="topLeft"
            overlayStyle={{maxWidth: 200, whiteSpace: 'pre-wrap'}}>
            {text}
          </Tooltip>
        )
      }, // 成本中心项名称
    ],
    key: 'costCenterItemId'
  },
  bgtUser: {
    title: messages('components.key3'/* 选择人员 */),
    url: '/api/select/user/by/name/or/code',
    searchForm: [
      { type: 'input', id: 'keyword', label: messages('components.key110'/* 姓名／工号 */) }
    ],
    columns: [
      { title: messages('components.key5'/* 工号 */), dataIndex: 'employeeID', width: '25%' },
      { title: messages('components.key6'/* 姓名 */), dataIndex: 'fullName', width: '25%' },
      { title: messages('components.key8'/* 部门名称 */), dataIndex: 'departmentName', width: '25%' },
      // { title: '职务', dataIndex: 'title', width: '25%' },
    ],
    key: 'id'
  },
  // 预算余额方案类型定义选择部门
  budget_department: {
    title: messages('components.key62'/* 选择部门 */), // 部门
    url: '/api/DepartmentGroup/selectDept/enabled',
    searchForm: [
      {
        type: 'input',
        id: 'deptCode',
        label: messages('components.key63'/* 部门编码 */), // 部门编码
        defaultValue: ''
      },
      {
        type: 'input',
        id: 'name',
        label: messages('components.key8'/* 部门名称 */), // 部门名称
        defaultValue: ''
      },
    ],
    columns: [
      {
        title: messages('components.key63'/* 部门编码 */), // 部门编码
        dataIndex: 'custDeptNumber'
      },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'name',
        render: (value, record) => (record.name = record.path && React.Component.prototype.checkFunctionProfiles('department.full.path.disabled', [undefined, false]) ? record.path : record.name)
      }

    ],
    key: 'departmentId'
  },
  // 供应商下未分配的公司
  vendor_company: {
    title: messages('components.key23'/* 选择公司 */),
    url: '/api/company/dto/by/tenant',
    searchForm: [
      {
        type: 'select',
        id: 'setOfBooksId',
        label: messages('components.key184'/* 账套 */),
        options: [],
        getUrl: '/api/setOfBooks/by/tenant',
        getParams: { roleType: 'TENANT' },
        method: 'get',
        labelKey: 'setOfBooksName',
        valueKey: 'id'
      },
      { type: 'input', id: 'companyCode', label: messages('components.key174'/* 公司代码 */) },
      { type: 'input', id: 'name', label: messages('components.key175'/* 公司名称 */) },
    ],
    columns: [
      { title: messages('components.key174'/* 公司代码 */), dataIndex: 'companyCode' },
      {
        title: messages('components.key175'/* 公司名称 */),
        dataIndex: 'name',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  // 供应商下未分配的公司
  'customer-type': {
    title: messages('components.key1013')/* 选择客户类型 */,
    url: '/api/customer/type/list?enabled=true',
    searchForm: [
      { type: 'input', id: 'code', label: messages('components.key1014')/* 客户类型编码 */ },
      { type: 'input', id: 'name', label: messages('components.key1015')/* 客户类型名称 */ },
    ],
    columns: [
      {
        title: messages('components.key1014')/* 客户类型编码 */,
        dataIndex: 'customerTypeCode',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key1015')/* 客户类型名称 */,
        dataIndex: 'customerTypeName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  // 乘机人
  passenger: {
    title: messages('components.key185'/* 乘机人 */),
    url: '/api/users/oids',
    searchForm: [
      // { type: 'input', id: 'fullName', label: messages('bookingManagement.bookingDetails.maintain.chooser.tips')/*"乘机人姓名，部门，职位"*/ },
    ],
    // 后端这个接口没有做搜索，老中控是前端做匹配的 这边因为用了控件不方便做匹配所以干脆去掉搜索了，一个订单不会有太多乘机人
    columns: [
      {
        title: messages('components.key186'/*-*/), dataIndex: 'avatar', render: value => <Avatar src={value} />, width: '10%'
      },
      {
        title: messages('components.key187'/* 姓名 */),
        dataIndex: 'fullName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key188'/* 部门 */),
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key189'/* 职位 */),
        dataIndex: 'title',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'userOID'
  },
  // 根据公司查询公司下开启的供应商及供应商账户
  vendor_account: {
    title: messages('components.key698')/* 选择供应商 */,
    url: '/supplier/api/ven/info/by/company',
    searchForm: [
      { type: 'input', id: 'venderCode', label: messages('components.key699')/* 供应商编码 */},
      { type: 'input', id: 'venNickname', label: messages('components.key700')/* 供应商名称 */},
    ],
    columns: [
      { title: messages('components.key699')/* 供应商编码 */, dataIndex: 'venderCode'},
      {
        title: messages('components.key700')/* 供应商名称 */,
        dataIndex: 'venNickname',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    key: 'venderCode'
  },
  credit_condition: {
    title: messages('components.key754')/* 信用规则 */,
    url: '/api/credit/{userOID}/conditions',
    searchForm: [
      { type: 'input', id: 'ruleContent', label: messages('components.key769')/* 规则项 */},
    ],
    columns: [
      { title: messages('components.key769')/* 规则项 */, dataIndex: 'ruleCondition'},
      { title: messages('common.remark')/* 备注 */, dataIndex: 'comment'},
      { title: messages('components.key770')/* 规则集名称 */, dataIndex: 'ruleSetName'},
      { title: messages('components.key758')/* 处理方式 */, dataIndex: 'operationType', render: operationType => constants.getTextByValue(operationType, 'creditRuleOperation')},
      {
        title: messages('components.key759')/* 处理结果 */,
        dataIndex: 'changeRank',
        render: (text, record) => `${record.operationType % 2 === 0 ? '-' : '+'}${record.operationType > 1002 ? record.changeRank : record.changeScore}`
      },
    ],
    key: 'id'
  },
  expense_report: {
    title: messages('components.key192')/* 报销单 */,
    url: '/api/expense/report/select/userbizcode',
    searchForm: [
      {
        type: 'input', id: 'businessCode', label: messages('components.key771')/* 单据号 */, defaultValue: ''
      }
    ],
    columns: [
      { title: messages('common.submit.date')/* 提交日期 */, dataIndex: 'createdDate', render: value => (value ? moment(value).format('YYYY-MM-DD') : '-')},
      { title: messages('components.key106')/* 事由 */, dataIndex: 'title'},
      { title: messages('components.key772')/* 报销单号 */, dataIndex: 'businessCode'},
      { title: messages('components.key380')/* 币种 */, dataIndex: 'currencyCode'},
      { title: messages('components.key381')/* 金额 */, dataIndex: 'totalAmount'}
    ],
    key: 'businessCode'
  },
  loan_line: {
    title: messages('components.key735')/* 选择借款行 */,
    url: '/api/loan/line/query/by/loan/bill/id',
    searchForm: [
      {type: 'input', id: 'payeeName', label: messages('components.key736')/* 收款对象 */}
    ],
    columns: [
      { title: messages('components.key737')/* 付款行号 */, dataIndex: 'sequence'},
      {
        title: messages('components.key736')/* 收款对象 */,
        dataIndex: 'payeeName',
        render: (value, record) => {
          const isEmployee = record.payeeType === 1002;
          return (
            <div>
              <div className={isEmployee ? 'table-blue' : 'table-grey'}>{isEmployee ? messages('loan-billing.key14')/* 员工 */ : messages('loan-billing.key15')/* 供应商 */}</div>
              {value}
            </div>
          );
        }
      },
      {
        title: messages('components.key844')/* 付款流水号 */,
        dataIndex: 'transactionDetailDTOList',
        render: (value) => {
          const temp = [];
          value && value.map((item) => {
            temp.push(item.transactionDetailCode);
          });
          const res = temp.join(',');
          return <Popover content={res} placement="topLeft">{res}</Popover>;
        }
      },
      { title: messages('components.key694')/* 借款类型 */, dataIndex: 'loanTypeName'},
      {
        title: messages('components.key738')/* 付款属性 */,
        dataIndex: 'planedRepaymentDate',
        render: (value, record) => {
          let res = '';
          switch (record.paymentType) {
            case 'ONLINE_PAYMENT':
              res = messages('loan-billing.key20')/* 线上 */;
              break;
            case 'OFFLINE_PAYMENT':
              res = messages('loan-billing.key21')/* 线下 */;
              break;
            default:
              res = messages('loan-billing.key22')/* 落地文件 */;
              break;
          }
          return (
            <div>
              <div>
                {messages('loan-billing.key23')/* 计划还款日期 */}
                :
                {value ? moment(value).format('YYYY-MM-DD') : '-'}
              </div>
              <div>
                {messages('loan-billing.key24')/* 付款方式类型 */}
                :
                {res}
              </div>
            </div>
          );
        }
      },
      { title: messages('common.remark')/* 备注 */, dataIndex: 'remark'},
      { title: messages('components.key380')/* 币种 */, dataIndex: 'currencyCode'},
      { title: messages('components.key739')/* 借款金额 */, dataIndex: 'amount'},
      { title: messages('components.key740')/* 待还款金额 */, dataIndex: 'stayWriteoffAmount'}
    ],
    key: 'id'
  },
  vendor_bank: {
    title: messages('components.key773')/* 请选择收款账号 */,
    url: '/supplier/api/ven/infoBank',
    searchForm: [],
    columns: [
      {
        title: messages('components.key87'/* 银行名称 */),
        dataIndex: 'bankName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key143'/* 银行卡号 */),
        dataIndex: 'bankAccount',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      }
    ],
    listKey: 'venBankAccountBeans',
    key: 'id'
  },
  // 根据userOID查询用户信息 post
  user_by_userOID: {
    title: messages('components.key3'/* 选择人员 */),
    url: `${config.baseUrl}/api/v3/users/oids`,
    searchForm: [
      {type: 'input', id: 'keyword', label: messages('components.key691')/* 工号/姓名/手机号 */},
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */),
        dataIndex: 'employeeID',
        width: '10%',
        render: value => (value ? <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover> : '-')
      },
      {
        title: messages('components.key6'/* 姓名 */),
        dataIndex: 'fullName',
        width: '25%',
        render: value => (value ? <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover> : '-')
      },
      {
        title: messages('components.key7'/* 手机号 */),
        dataIndex: 'mobile',
        width: '25%',
        render: value => (value ? <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover> : '-')
      },
      {
        title: messages('components.key8'/* 部门名称 */),
        dataIndex: 'departmentName',
        width: '20%',
        render: value => (value ? <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover> : '-')
      },
      {
        title: messages('components.key9'/* 职务 */),
        dataIndex: 'title',
        width: '20%',
        render: value => (value ? <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover> : '-')
      }
    ],
    key: 'userOID'
  },
  'loan-max-users': {
    title: messages('components.key3'/* 选择人员 */),
    url: '/api/users/v3/search?roleType=TENANT',
    searchForm: [
      {type: 'input', id: 'keyword', label: messages('components.key4'/* 员工工号、姓名、手机号 */)},
      {
        type: 'combobox',
        id: 'departmentOID',
        label: messages('components.key539')/* 部门 */,
        placeholder: messages('common.please.enter'),
        options: [],
        searchUrl: '/api/department/tenant/keyword/v2?status=101&roleType=TENANT',
        method: 'get',
        searchKey: 'keyword',
        labelKey: 'name',
        valueKey: 'departmentOID'
      },
      {
        type: 'select',
        id: 'companyOID',
        label: messages('components.key777')/* 公司 */,
        options: [],
        getUrl: `/api/company/by/term?enabled=${true}&page=0&size=100`,
        getParams: { roleType: 'TENANT' },
        method: 'get',
        labelKey: 'name',
        valueKey: 'companyOID'
      }
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID',
        width: '10%'
      },
      {
        title: messages('components.key6'/* 姓名 */), // 姓名
        dataIndex: 'fullName',
        width: '25%'
      },
      {
        title: messages('components.key777')/* 公司 */,
        dataIndex: 'companyName',
        width: '25%'
      },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        width: '20%',
        render: value => value || '-'
      }
    ],
    key: 'id'
  },
  finance_user: {
    title: messages('components.key3'/* 选择人员 */),
    url: '/api/custom/forms/finance/empList',
    searchForm: [
      {type: 'input', id: 'keyword', label: messages('components.key697')/* 工号/姓名 */},
      {
        type: 'combobox',
        id: 'departmentOID',
        label: messages('components.key539')/* 部门 */,
        placeholder: messages('common.please.enter'),
        options: [],
        searchUrl: '/api/department/tenant/keyword/v2?status=101&roleType=TENANT',
        method: 'get',
        searchKey: 'keyword',
        labelKey: 'name',
        valueKey: 'departmentOID'
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID',
        width: '10%'
      },
      {
        title: messages('components.key6'/* 姓名 */), // 姓名
        dataIndex: 'fullName',
        width: '25%',
        render: (value, record) => <span>{`${value}${record.status === 1003 ? messages('components.key813')/* （离职员工） */ : ''}`}</span>
      },
      {
        title: messages('components.key7'/* 手机号 */), // 手机号
        dataIndex: 'mobile',
        width: '25%'
      },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        width: '20%',
        render: value => value || '-'
      },
      {
        title: messages('components.key9'/* 职务 */), // 职务
        dataIndex: 'title',
        width: '20%',
        render: value => value || '-'
      }
    ],
    key: 'id'
  },
  finance_vendor: {
    title: messages('components.key698')/* 选择供应商 */,
    url: '/api/custom/forms/finance/vendorList',
    searchForm: [
      {type: 'input', id: 'venNickname', label: messages('components.key700')/* 供应商名称 */},
      {type: 'input', id: 'venderCode', label: messages('components.key699')/* 供应商编码 */},
      {type: 'input', id: 'venderTypeName', label: messages('components.key139')/* 供应商类型名称 */},
    ],
    columns: [
      {
        title: messages('components.key700')/* 供应商名称 */,
        dataIndex: 'venNickname',
        render:
          (value, record) => <Popover placement="topLeft" content={`${value}${record.venType === 1002 ? messages('components.key814')/* （已停用） */ : ''}`} overlayStyle={{maxWidth: 500}}>{`${value}${record.venType === 1002 ? messages('components.key814')/* （已停用） */ : ''}`}</Popover>
      },
      { title: messages('components.key699')/* 供应商编码 */, dataIndex: 'venderCode', render: value => <Popover placement="topLeft" content={value}>{value}</Popover> },
      { title: messages('components.key138'/* 供应商类型代码 */), dataIndex: 'vendorTypeCode' },
      { title: messages('components.key139'/* 供应商类型名称 */), dataIndex: 'venderTypeName' },
    ],
    key: 'id'
  },
  finance_account: {
    title: messages('components.key818')/* 核算业务来源数据 */,
    url: '/ledger/api/functionDef/query/pending/ref',
    searchForm: [{
      type: 'input',
      id: 'functionDefCodeOrName',
      label: messages('components.key819')/* 核算业务编码/名称 */,
      placeholder: messages('common.please.enter')
    }],
    columns: [
      { title: messages('components.key820')/* 核算业务编码 */, dataIndex: 'typeCode' },
      { title: messages('components.key821')/* 核算业务名称 */, dataIndex: 'typeName' },
      { title: messages('components.key822')/* 说明 */, dataIndex: 'comment' },
      { title: messages('components.key823')/* 是否预置 */, dataIndex: 'isDefault', render: value => (value ? messages('components.key378')/* 是 */ : messages('components.key377'))/* 否 */ },
      { title: messages('common.column.status')/* 状态 */, dataIndex: 'isEnable', render: value => (value ? messages('common.valid')/* 生效 */ : messages('components.key824'))/* 不生效 */},
    ],
    key: 'id',
    listKey: 'rows'
  },
  support_failure_company: { // 支持失效公司
    title: messages('components.key23'/* 选择公司 */),
    url: '/api/company/by/condition?isAll=true',
    searchForm: [
      { type: 'input', id: 'companyCode', label: messages('components.key17'/* 公司代码 */) },
      { type: 'input', id: 'name', label: messages('components.key18'/* 公司名称 */) },
      { type: 'input', id: 'companyCodeFrom', label: messages('components.key19'/* 公司代码从 */) },
      { type: 'input', id: 'companyCodeTo', label: messages('components.key20'/* 公司代码至 */) }
    ],
    columns: [
      {
        title: messages('components.key17'/* 公司代码 */),
        dataIndex: 'companyCode',
        render: (value, record) => (
          <span style={{ color: !record.enabled ? '#cecece' : '' }}>{ value }</span>
        )
      },
      {
        title: messages('components.key18'/* 公司名称 */),
        dataIndex: 'name',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: !record.enabled ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      },
      {
        title: messages('components.key21'/* 公司类型 */),
        dataIndex: 'companyTypeName',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: !record.enabled ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      },
      {
        // 状态
        title: messages('setting.key354'/* 状态 */),
        dataIndex: 'enabled',
        width: '20%',
        render: enabled => (
          <Badge
            status={enabled ? 'success' : 'error'}
            text={enabled ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      },
    ],
    key: 'id'
  },
  assign_company: {
    title: messages('components.key23'/* 选择公司 */),
    url: '/api/company/by/condition',
    searchForm: [
      { type: 'input', id: 'companyCode', label: messages('components.key17'/* 公司代码 */) },
      { type: 'input', id: 'name', label: messages('components.key18'/* 公司名称 */) }
    ],
    columns: [
      {
        title: messages('components.key17'/* 公司代码 */),
        dataIndex: 'companyCode',
        render: (value, record) => (
          <span style={{ color: !record.enabled ? '#cecece' : '' }}>{ value }</span>
        )
      },
      {
        title: messages('components.key18'/* 公司名称 */),
        dataIndex: 'name',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: !record.enabled ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      },
    ],
    key: 'id'
  },
  support_failure_user: {
    title: messages('components.key3'/* 选择人员 */), // 支持失效人员
    url: `${config.baseUrl}/api/users/v3/search?status=all`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1002')/* 工号/姓名/手机号/部门/邮箱 */ },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */),
        dataIndex: 'employeeID',
        width: '10%',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: record.status === 1003 ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      },
      {
        title: messages('components.key6'/* 姓名 */),
        dataIndex: 'fullName',
        width: '25%',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: record.status === 1003 ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      },
      {
        title: messages('components.key7'/* 手机号 */),
        dataIndex: 'mobile',
        width: '25%',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: record.status === 1003 ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      },
      {
        title: messages('components.key8'/* 部门名称 */),
        dataIndex: 'departmentName',
        width: '20%',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: record.status === 1003 ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      },
      {
        title: messages('components.key9'/* 职务 */),
        dataIndex: 'title',
        width: '20%',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: record.status === 1003 ? '#cecece' : '' }}>{ value || '-' }</span>
          </Popover>
        )
      }
    ],
    key: 'userOID'
  },
  support_failure_user_group: {
    title: messages('components.key552')/* '选择人员组支持失效员工组' */,
    url: '/api/user/groups/search',
    searchForm: [
      { type: 'input', id: 'name', label: messages('components.key10'/* 名称 */) }
    ],
    columns: [
      {
        title: messages('components.key11'/* 编码 */),
        dataIndex: 'code',
        width: '30%',
        render: (value, record) => (
          <span style={{ color: !record.enabled ? '#cecece' : '' }}>{ value }</span>
        )
      },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'name',
        width: '30%',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: !record.enabled ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      },
      {
        title: messages('components.key12'/* 描述 */),
        dataIndex: 'comment',
        width: '40%',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: !record.enabled ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      }
    ],
    key: 'id'
  },
  support_failure_department: {
    title: messages('components.key62'/* 选择部门 */), // 支持失效部门
    url: `${config.budgetUrl}/api/budget/journals/selectDepartmentsByCompanyAndTenant?isAll=true`,
    searchForm: [
      {
        type: 'input',
        id: 'deptCode',
        label: messages('components.key63'/* 部门编码 */),
        defaultValue: ''
      },
      {
        type: 'input',
        id: 'deptName',
        label: messages('components.key8'/* 部门名称 */),
        defaultValue: ''
      },
    ],
    columns: [
      {
        title: messages('components.key63'/* 部门编码 */),
        dataIndex: 'code',
        render: (value, record) => (
          <span style={{ color: !record.isEnabled ? '#cecece' : '' }}>{ value }</span>
        )
      },
      {
        title: messages('components.key8'/* 部门名称 */),
        dataIndex: 'name',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: !record.isEnabled ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      }
    ],
    key: 'id'
  },
  support_failure_company_group: {
    title: messages('components.key634'/* 选择公司组 */),
    url: '/api/company/group/query/section/dto',
    searchForm: [
      { type: 'input', id: 'companyGroupCode', label: messages('components.key11'/* 编码 */) },
      { type: 'input', id: 'companyGroupName', label: messages('components.key10'/* 名称 */) },
    ],
    columns: [
      {
        title: messages('components.key11'/* 编码 */),
        dataIndex: 'companyGroupCode',
        render: (value, record) => (
          <span style={{ color: !record.enabled ? '#cecece' : '' }}>{ value }</span>
        )
      },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'companyGroupName',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{ maxWidth: 500 }}>
            <span style={{ color: !record.enabled ? '#cecece' : '' }}>{ value }</span>
          </Popover>
        )
      }
    ],
    key: 'id'
  },
  support_failure_department_group: { // 支持失效部门组
    title: messages('components.key635'/* 选择部门组 */),
    url: '/api/DepartmentGroup/selectDepartmentGroupByInput',
    searchForm: [
      {
        type: 'input', id: 'deptGroupCode', label: messages('components.key11'/* 编码 */), defaultValue: ''
      },
      {
        type: 'input', id: 'name', label: messages('components.key10'/* 名称 */), defaultValue: ''
      },
    ],
    columns: [
      {
        title: messages('components.key11'/* 编码 */),
        dataIndex: 'deptGroupCode',
        render: (value, record) => (
          <span style={{color: !record.enabled ? '#cecece' : ''}}>{value}</span>
        )
      },
      {
        title: messages('components.key10'/* 名称 */),
        dataIndex: 'name',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>
            <span style={{color: !record.enabled ? '#cecece' : ''}}>{value}</span>
          </Popover>
        )
      }
    ],
    key: 'id'
  },
  support_failure_cost_center: { // 支持失效成本中心
    title: messages('components.key68'/* 成本中心 */), // 成本中心
    url: '/api/costcenter/items',
    searchForm: [{
      type: 'input',
      id: 'keyword',
      label: `${messages('components.key69'/* 成本中心名称 */)}/${messages('components.key70'/* 代码 */)}/${messages('components.key71'/* 经理 */)}`
    }],
    columns: [
      {
        title: messages('components.key72'/* 成本中心代码 */), // 成本中心代码
        dataIndex: 'code',
        render: (value, record) => (
          <span style={{color: !record.enabled ? '#cecece' : ''}}>{value}</span>
        )
      },
      {
        title: messages('components.key69'/* 成本中心名称 */), // 成本中心名称
        dataIndex: 'name',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>
            <span style={{color: !record.enabled ? '#cecece' : ''}}>{value}</span>
          </Popover>
        )
      },
      {
        title: messages('components.key71'/* 经理 */), // 经理人
        dataIndex: 'managerFullName',
        render: (value, record) => (
          <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>
            <span style={{color: !record.enabled ? '#cecece' : ''}}>{value}</span>
          </Popover>
        )
      },
      {
        title: messages('common.column.status'/* 状态 */),
        dataIndex: 'enabled',
        render: enable => (
          <Badge
            status={enable ? 'success' : 'error'}
            text={enable ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      },
    ],
    key: 'id'
  },
  select_form: {
    title: messages('components.key832')/* 选择单据 */,
    url: '/api/custom/forms/loan/reference',
    searchForm: [{
      type: 'input',
      id: 'keyword',
      label: messages('common.document.name')/* 单据名称 */
    }, {
      type: 'input',
      id: 'remarkKeyword',
      label: messages('common.remark')/* 备注 */
    }],
    columns: [
      {
        title: messages('common.document.name')/* 单据名称 */,
        dataIndex: 'formName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('common.remark')/* 备注 */,
        dataIndex: 'remark',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('common.column.status')/* 状态 */,
        dataIndex: 'valid',
        render: value => (
          <Badge
            status={value ? 'success' : 'error'}
            text={value ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      }
    ],
    key: 'formOID'
  },
  select_object: {
    title: messages('components.key776')/* 选择科目 */,
    url: '/api/accounts/query/setOffBooksId',
    searchForm: [
      { type: 'input', id: 'accountCodeOrName', label: messages('components.key1069')/* 科目代码/名称 */ }
    ],
    columns: [
      {title: messages('components.key837')/* 科目代码 */, dataIndex: 'accountCode'},
      {title: messages('components.key838')/* 科目名称 */, dataIndex: 'accountDesc'}
    ],
    key: 'id'
  },
  cost_center_group: {
    title: messages('components.key845')/* 成本中心组 */,
    url: '/api/cost/center/group',
    searchForm: [{
      type: 'input',
      id: 'keyword',
      label: messages('components.key846')/* 名称/编码 */
    }],
    columns: [
      {title: messages('components.key10'/* 名称 */), dataIndex: 'costCenterGroupName', render: value => <Popover content={value}>{value}</Popover>},
      {title: messages('components.key11'/* 编码 */), dataIndex: 'costCenterGroupCode', render: value => <Popover content={value}>{value}</Popover>},
      {
        title: messages('common.column.status')/* 状态 */,
        dataIndex: 'enabled',
        width: 120,
        render: value => (
          <Badge
            status={value ? 'success' : 'error'}
            text={value ? messages('common.status.enable') : messages('common.status.disable')} />
        )
      },
    ],
    key: 'costCenterGroupCode'
  },
  choose_contract: {
    title: messages('components.key857')/* 选择合同 */,
    url: '/contract/api/v2/contract/document/relations/associate/query',
    searchForm: [
      {type: 'input', id: 'contractNumber', label: messages('components.key858')/* 合同编号 */},
      {type: 'input', id: 'contractTypeName', label: messages('components.key640')/* 合同类型 */},
      {type: 'input', id: 'contractName', label: messages('components.key859')/* 合同名称 */}
    ],
    columns: [
      {title: messages('components.key471')/* 行号 */, dataIndex: 'lineNumber'},
      {title: messages('components.key860')/* 收款方类型 */, dataIndex: 'partnerCategory', render: value => (value === 'EMPLOYEE' ? messages('components.key763')/* 员工 */ : messages('components.key861'))/* 供应商 */},
      {title: messages('components.key862')/* 收款方 */, dataIndex: 'partnerCategoryName'},
      {title: messages('components.key381')/* 金额 */, dataIndex: 'amount', render: (value, record) => React.Component.prototype.filterMoney(value, queryCurrencyPrecision(record.currency))},
      {title: messages('components.key863')/* 已关联 */, dataIndex: 'associatedAmount', render: (value, record) => React.Component.prototype.filterMoney(value, queryCurrencyPrecision(record.currency))},
      {title: messages('components.key864')/* 可关联 */, dataIndex: 'availableAmount', render: (value, record) => React.Component.prototype.filterMoney(value, queryCurrencyPrecision(record.currency))},
      {title: <Popover content={messages('components.key865')/* 计划付款日期 */}>{messages('components.key865')/* 计划付款日期 */}</Popover>, dataIndex: 'dueDate', render: value => <Popover content={moment(value).format('YYYY-MM-DD')}>{moment(value).format('YYYY-MM-DD')}</Popover>}
    ],
    key: 'contractLineId'
  },
  choose_function_define: {
    title: messages('components.key866')/* 选择核算业务类型 */,
    url: '/ledger/api/functionDef/query/page/by/setOfBooksId',
    searchForm: [],
    columns: [
      {title: messages('components.key867')/* 核算业务类型编码 */, dataIndex: 'typeCode'},
      {title: messages('components.key868')/* 核算业务类型名称 */, dataIndex: 'typeName'}
    ],
    key: 'id',
    listKey: 'rows'
  },
  user_condition: { // 报销单搜索条件栏，增加离职列表user
    title: messages('components.key3'/* 选择人员 */), // 选择人员
    url: '/api/users/v3/search?status=all',
    searchForm: [
      {
        type: 'input', id: 'keyword',
        label: messages('components.key1007')/*工号/姓名/手机/部门/邮箱/职位*/,
        colSpan: 9
      }
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID',
        width: '10%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key6'/* 姓名 */), // 姓名
        dataIndex: 'fullName',
        width: '25%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key7'/* 手机号 */), // 手机号
        dataIndex: 'mobile',
        width: '25%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        width: '20%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key189')/* 职位 */,
        dataIndex: 'title',
        width: '20%',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key896')/* 是否离职 */,
        dataIndex: 'status',
        width: '20%',
        render: value => <span>{ value === 1001 ? messages('components.key897')/* 在职 */ : messages('components.key898')/* 已离职 */}</span>
      },
    ],
    key: 'userOID'
  },
  semiannual: {
    title: messages('budget.key165')/* 半年度 */,
    searchForm: [],
    url: '/api/custom/enumerations/template/by/type',
    columns: [
      { title: messages('budget.key165')/* 半年度 */, dataIndex: 'messageKey' },
    ],
    key: 'id'
  },
  contract: {
    title: messages('components.key909')/* 选择合同 */,
    url: `${config.contractUrl}/api/contract/document/relations/associate/header/query`,
    searchForm: [{
      type: 'input',
      id: 'fuzzyQueryCode',
      label: messages('components.key910')/* 合同编号/类型/名称 */
    }],
    columns: [
      {title: messages('components.key858')/* 合同编号 */, dataIndex: 'contractNumber', render: value => <Popover content={value}>{value}</Popover>},
      {title: messages('components.key640')/* 合同类型 */, dataIndex: 'contractTypeName', render: value => <Popover content={value}>{value}</Popover>},
      {title: messages('components.key859')/* 合同名称 */, dataIndex: 'contractName', render: value => <Popover content={value}>{value}</Popover>},
    ],
    key: 'contractHeaderId'
  },
  mcd_role: {
    title: '选择角色',
    url: `${config.baseUrl}/api/security/permission/resource/tenant`,
    searchForm: [{
      type: 'input',
      id: 'keyword',
      label: '角色'
    }],
    columns: [
      {title: '用户角色', dataIndex: 'permissionName', render: value => <Popover content={value}>{value}</Popover>},
    ],
    key: 'mcd_role'
  },
  mcd_car: {
    title: '选择车辆',
    url: `${config.baseUrl}/api/car`,
    listKey: 'records',
    searchForm: [{
      type: 'input',
      id: 'carNumber',
      label: '车辆'
    }],
    columns: [
      {title: '车牌号', dataIndex: 'carNumber', render: value => <Popover content={value}>{value}</Popover>},
    ],
    key: 'mcd_car'
  },
  mcd_department: {
    title: '选择部门',
    url: `${config.baseUrl}/api/cost/center/items/de2b2e72-5e7c-4177-9493-c417a5958100/all`,
    searchForm: [{
      type: 'input',
      id: 'keyword',
      label: '请输入'
    }],
    columns: [
      {title: '部门', dataIndex: 'name', render: value => <Popover content={value}>{value}</Popover>},
    ],
    key: 'mcd_department'
  },
  select_payee: {
    title: '选择收款方',
    url: '/api/users/v3/search?roleType=TENANT',
    searchForm: [
      {
        type: 'input', id: 'keyword', label: '名称', defaultValue: ''
      }
    ],
    columns: [
      { title: '名称', dataIndex: 'fullName' },
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID'
      }
    ],
    key: 'id'
  },
  select_expense_labels: {
    title: messages('components.key967')/* 选择报销单标签 */,
    url: '/api/listCode?listType=OTHER&listCode=systemLabel-EXPENSE_REPORT',
    searchForm: [
      { type: 'input', id: 'param', label: messages('components.key962')/* 标签名称 */ }
    ],
    columns:
    [
        { title: messages('components.key962')/* 标签名称 */, dataIndex: 'name', render: value => <Popover content={value}>{value}</Popover> },
        { title: messages('components.key963')/* 标签说明 */, dataIndex: 'description', render: value => <Popover content={value}>{value}</Popover> }
    ],
    key: 'id'
  },
  reimbursemen_type: {
    title: messages('components.key855')/* 报销类型 */,
    url: '/api/custom/enumeration/items/by/system/type',
    searchForm: [
      {type: 'input', id: 'keyword', label: messages('components.key968')/* 报销类型编码/名称 */}
    ],
    columns: [
      {title: messages('components.key969')/* 报销类型编码 */, dataIndex: 'code', render: value => <Popover content={value}>{value}</Popover>},
      {title: messages('components.key970')/* 报销类型名称 */, dataIndex: 'messageKey', render: value => <Popover content={value}>{value}</Popover>}
    ],
    key: 'id'
  },
  select_invoice_type: {
    title: messages('components.key971')/* 请选择发票类型 */,
    url: '/api/custom/enumeration/items/by/system/type?isAll=false&systemCustomEnumerationType=1012',
    searchForm: [
      { type: 'input', id: 'keyword', label: messages('components.key10'/* 名称 */) }
    ],
    columns:
    [
        { title: messages('components.key11'/* 编码 */), dataIndex: 'code', render: value => <Popover content={value}>{value}</Popover> },
        { title: messages('components.key10'/* 名称 */), dataIndex: 'messageKey', render: value => <Popover content={value}>{value}</Popover> }
    ],
    key: 'code'
  },
  select_invoice_code: {
    title: messages('components.key972')/* 发票税收分类编码 */,
    url: '/api/listCode?listCode=taxCode&listType=OTHER',
    searchForm: [
      { type: 'input', id: 'param', label: messages('components.key10'/* 名称 */) }
    ],
    columns:
    [
        { title: messages('components.key11'/* 编码 */), dataIndex: 'code', render: value => <Popover content={value}>{value}</Popover> },
        { title: messages('components.key10'/* 名称 */), dataIndex: 'name', render: value => <Popover content={value}>{value}</Popover> }
    ],
    key: 'code'
  },
  legal_entity: {
    title: messages('components.key59'/* 法人实体 */),
    url: '/api/finance/role/legalEntity/query',
    searchForm: [],
    listKey: 'rows',
    columns: [{
      title: messages('components.key111'/* 法人实体名称*/),
      dataIndex: 'entityName',
      render: (value, record) => record.enabled ? value : <span>
        {value}
        <span style={{ color: '#959595' }}>({messages('common.disabling')})</span>
      </span>
    }, {
      title: messages('components.key141'/* 银行*/), dataIndex: 'accountBank'
    }],
    key: 'companyReceiptedOID'
  },
  // 费用选择参与人
  expense_participants: {
    title: messages('components.key3'/* 选择人员 */),
    url: '/api/expense/participantsList',
    searchForm: [
      {type: 'input', id: 'keyword', label: messages('components.key856')/* 工号/姓名/部门 */}
    ],
    columns: [
      {title: messages('components.key5'/* 工号 */), dataIndex: 'employeeID'},
      {
        title: messages('components.key6'/* 姓名 */),
        dataIndex: 'fullName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key8'/* 部门名称 */),
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key9'/* 职务 */),
        dataIndex: 'title',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'id'
  },
  // 车辆信息维护：司机
  mcd_driver: {
    title: messages('mcd.basicData.vehicle.choose'),
    url: '/api/driver/mcd',
    listKey: 'records',
    searchForm: [
      {type: 'input', id: 'keyword', label: messages('mcd.basicData.vehicle.vendorAndName')/* Vendor编码/姓名 */}
    ],
    columns: [
      {title: messages('mcd.basicData.laborerAndDriver.Vendor'/* Vendor编码 */), dataIndex: 'vnvndr'},
      {title: messages('components.key6'/* 姓名*/),
        dataIndex: 'vnlgnm',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>},
    ],
    key: 'id'
  },
  // GM/VP/Officer数据
  gm_vp_officer: {
    title: messages('my-account.key392'/* 选择GM/VP/Officer */),
    url: '/api/public/getGMVPOfficer',
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1007')/* 工号/姓名/手机号/部门/邮箱/职位 */,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID'
      },
      { title: '姓名', dataIndex: 'fullName' },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'employeeID'
  },
  // 区域
  area: {
    title: messages('components.key1316'/* 选择区域 */), // 选择区域
    //url: `/api/custom/enumerations/区域/items/v3`,
    url: `/api/company/search/getAreaOrMarket?areaOrMarketFlag=1`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('enterprise-region.key1')/* 区域 */,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('enterprise-region.key1'/* 区域 */), // 区域
        dataIndex: 'messageKey',
      }
    ],
    key: 'id'
  },
  c5_people: {
    title: messages('components.key3'/* 选择人员 */),
    url: `${config.baseUrl}/api/public/getC5People`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1007')/* 工号/姓名/手机号/部门/邮箱/职位 */,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID'
      },
      { title: '姓名', dataIndex: 'fullName' },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'userOID'
  },
  // 市场
  market: {
    title: messages('components.key1317'/* 选择市场 */), // 选择市场
    //url: `/api/custom/enumerations/市场/items/v3`,
    url: `/api/company/search/getAreaOrMarket?areaOrMarketFlag=2`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('enterprise-region.key2')/* 市场 */,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('enterprise-region.key2'/* 市场 */), // 市场
        dataIndex: 'messageKey',
      }
    ],
    key: 'id'
  },
  // 分摊项是餐厅时，拿DO、OC、OM数据
  restaurant_people: {
    title: messages('components.key3'/* 选择人员 */),
    url: `${config.baseUrl}/api/public/getRestaurantPeople`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1007')/* 工号/姓名/手机号/部门/邮箱/职位 */,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID'
      },
      { title: '姓名', dataIndex: 'fullName' },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'userOID'
  },
  priority_company: {
    title: messages("common-1.key287") /*选择公司*/,
    url: "/api/widget/company/all?enabled=true",
    searchForm: [
      {
        type: "input",
        id: "companyCode",
        label: messages("common-1.key879") /*公司编码*/,
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
      {
        type: "input",
        id: "name",
        label: messages("common-1.key732") /*公司名称*/,
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
    ],
    columns: [
      {
        title: messages("common-1.key732") /*公司名称*/,
        dataIndex: "name",
      },
      {
        title: messages("common-1.key731") /*公司代码*/,
        dataIndex: "companyCode",
      },
    ],
    key: "id",
  },
  priority_legal_person: {
    title: messages("common-1.key979") /*选择法人*/,
    url: "/api/widget/company/all?enabled=true",
    searchForm: [
      {
        type: "input",
        id: "name",
        label: messages("common-1.key980") /*法人名称*/,
      },
    ],
    columns: [
      {
        title: messages("common-1.key980") /*法人名称*/,
        dataIndex: "name",
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
    ],
    key: "id",
  },
  department_group_left: {
    title: messages("common.department") /*部门*/,
    url: `${config.baseUrl}/api/DepartmentGroup/selectDepartmentByGroupCodeAndDescription`,
    searchForm: [
      {
        type: "input",
        id: "deptGroupCode",
        label: messages("common-1.key709") /*部门编码*/,
        defaultValue: "",
      },
      {
        type: "input",
        id: "name",
        label: messages("common-1.key708") /*部门名称*/,
        defaultValue: "",
      },
    ],
    columns: [
      {
        title: messages("common-1.key709") /*部门编码*/,
        dataIndex: "custDeptNumber",
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
      {
        title: messages("common-1.key708") /*部门名称*/,
        dataIndex: "name",
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
    ],
    key: "departmentId",
  },
  "increment-order-list": {
    title: messages("common-1.key981") /*选择订单*/,
    url: "/api/order/info/list?invoiceStatus=NON_INVOICE&orderTypes=NEW_BUY&orderTypes=VALET_ORDER&status=PAID",
    searchForm: [
      {
        type: "input",
        id: "orderCode",
        label: messages("common-1.key982") /*订单编号*/,
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
      {
        type: "select",
        id: "serviceTypeCode",
        label: messages("common-1.key983") /*服务大类*/,
        options: [
          { label: messages("common-1.key984") /*银企直联*/, value: "BWE" },
          { label: messages("common-1.key985") /*拍照识别发票*/, value: "OCR" },
          {
            label: messages("common-1.key198") /*发票查验*/,
            value: "CHECK_INVOICE",
          },
        ],
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
    ],
    columns: [
      {
        title: messages("common-1.key982") /*订单编号*/,
        dataIndex: "orderCode",
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
      {
        title: messages("common-1.key983") /*服务大类*/,
        dataIndex: "serviceTypeName",
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
      {
        title: messages("common-1.key986") /*订单类型*/,
        dataIndex: "orderTypeName",
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
      {
        title: messages("common-1.key987") /*订单状态*/,
        dataIndex: "statusName",
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
      {
        title: messages("common-1.key988") /*订单金额*/,
        dataIndex: "actualAmount",
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
      {
        title: messages("common-1.key989") /*开票状态*/,
        dataIndex: "invoiceStatusName",
        render: (value) => (
          <Popover placement="topLeft" content={value}>
            {value}
          </Popover>
        ),
      },
    ],
    key: "id",
  },
  select_invoice_type_all: {
    title: messages("common-1.key977") /*请选择发票类型*/,
    url: `/api/listCode?listType=SYSTEM-TENANT&listCode=1012`,
    searchForm: [
      {
        type: "input",
        id: "param",
        label: messages("common-1.key605") /*名称*/,
      },
    ],
    columns: [
      {
        title: messages("common-1.key522") /*编码*/,
        dataIndex: "code",
        render: (value) => <Popover content={value}>{value}</Popover>,
      },
      {
        title: messages("common-1.key605") /*名称*/,
        dataIndex: "name",
        render: (value) => <Popover content={value}>{value}</Popover>,
      },
    ],
    key: "code",
  },
  select_expense_type_all: {
    title: messages("common.expense.type") /*费用类型*/,
    url: `/api/listCode?listType=OTHER&listCode=expenseType`,
    searchForm: [
      {
        type: "input",
        id: "param",
        label: messages("common-1.key840") /*费用类型名称*/,
      },
    ],
    columns: [
      {
        title: messages("common-1.key840") /*费用类型名称*/,
        dataIndex: "name",
      },
      {
        title: messages("common-1.key990") /*费用类型描述*/,
        dataIndex: "description",
      },
    ],
    key: "id",
  },
  audit_transfer: {
    title: messages("common-1.key710") /*选择人员*/,
    url: "/api/authorization/policy/v2/finance/user/by/page",
    searchForm: [
      {
        type: "input",
        id: "keyword",
        label: messages("common-1.key711") /*工号/姓名/手机号/部门/邮箱/职位*/,
        colSpan: 12,
      },
    ],
    columns: [
      {
        title: messages("common.user.id") /*工号*/, //工号
        dataIndex: "employeeID",
      },
      {
        title: messages("common-1.key500") /*姓名*/, //姓名
        dataIndex: "fullName",
        render: (value) => {
          return (
            <Popover placement="topLeft" content={value}>
              {value}
            </Popover>
          );
        },
      },
      {
        title: messages("common-1.key502") /*手机号*/, //手机号
        dataIndex: "mobile",
        render: (value) => {
          return (
            <Popover placement="topLeft" content={value}>
              {value}
            </Popover>
          );
        },
      },
      {
        title: messages("common-1.key708") /*部门名称*/, //部门名称
        dataIndex: "departmentName",
        render: (value) => {
          return (
            <Popover placement="topLeft" content={value}>
              {value}
            </Popover>
          );
        },
      },
      {
        title: messages("common-1.key565") /*职位*/,
        dataIndex: "title",
        render: (value) => {
          return (
            <Popover placement="topLeft" content={value}>
              {value}
            </Popover>
          );
        },
      },
    ],
    key: "userOID",
  },
  select_invoice_label: {
    title: messages("common-1.key717") /*费用标签*/,
    url: `/config/api/config/factor/1118154566368919554/dataList`,
    searchForm: [
      {
        type: "input",
        id: "param",
        label: messages("common-1.key717") /*费用标签*/,
      },
    ],
    columns: [
      {
        title: messages("common-1.key716") /*费用标签名称*/,
        dataIndex: "name",
      },
      {
        title: messages("common-1.key991") /*费用标签描述*/,
        dataIndex: "description",
      },
    ],
    key: "id",
    listKey: "rows",
  },
  select_business_type: {
    title: messages("common-1.key992") /*业务用途*/,
    url: `/config/api/config/factor/1118154566368919555/dataList`,
    searchForm: [
      {
        type: "input",
        id: "param",
        label: messages("common-1.key993") /*业务用途名称*/,
      },
    ],
    columns: [
      {
        title: messages("common-1.key993") /*业务用途名称*/,
        dataIndex: "name",
      },
      {
        title: messages("common-1.key994") /*业务用途描述*/,
        dataIndex: "description",
      },
    ],
    key: "id",
    listKey: "rows",
  },
  third_user: {
    title: messages('components.key3'/* 选择人员 */), // 选择人员
    url: `${config.baseUrl}/api/driver/mcd`,
    listKey: 'records',
    searchForm: [
      {
        type: 'input',
        id: 'vnlgnm',
        label: '姓名'
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'vnvndr',
      },
      {
        title: messages('components.key6'/* 姓名 */), // 姓名
        dataIndex: 'vnlgnm',
        render: value => <Popover placement="topLeft" content={value.trim()} overlayStyle={{maxWidth: 500}}>{value.trim()}</Popover>
      },
    ],
    key: 'vnlgnm'
  },
  select_user: {
    title: messages('components.key3'/* 选择人员 */), // 选择人员
    url: `${config.baseUrl}/api/public/getC5People`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1007')/*工号/姓名/手机/部门/邮箱/职位*/,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID',
      },
      {
        title: messages('components.key6'/* 姓名 */), // 姓名
        dataIndex: 'fullName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key7'/* 手机号 */), // 手机号
        dataIndex: 'mobile',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key189')/* 职位 */,
        dataIndex: 'title',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'userOID'
  },
  user_lsm_or_msmp: {
    title: messages('components.key3'/* 选择人员 */), // 选择人员
    url: `${config.baseUrl}/api/public/getLSMOrMSMPeople`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1007')/*工号/姓名/手机/部门/邮箱/职位*/,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID',
      },
      {
        title: messages('components.key6'/* 姓名 */), // 姓名
        dataIndex: 'fullName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key7'/* 手机号 */), // 手机号
        dataIndex: 'mobile',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
      {
        title: messages('components.key189')/* 职位 */,
        dataIndex: 'title',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'userOID'
  },
  // https://pmo.mcd.com.cn/jira/browse/TES-786
  quickReplyDetail: {
    title: '审核意见',
    url: `/api/audit/quickReplyDetail/getAll`,
    searchForm: [
      {
        type: "input",
        id: "searchParam",
        label: '审核意见或审核意见',
      },
    ],
    columns: [
      {
        width: 120,
        title: "编码",
        dataIndex: "code",
      },
      {
        title: "审核意见",
        dataIndex: "reply",
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: "code",
  },
  // 费用是市场调研餐费是选择CBI部门对应费用确认人
  cbi_people: {
    title: messages('components.key3'/* 选择人员 */),
    url: `${config.baseUrl}/api/public/getCBIPeople`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1007')/* 工号/姓名/手机号/部门/邮箱/职位 */,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID'
      },
      { title: '姓名', dataIndex: 'fullName' },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'userOID'
  },
  // 代第三方报销授权人接口
  car_approval: {
    title: messages('components.key3'/* 选择人员 */),
    url: `${config.baseUrl}/api/car/getCarApproval`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1327')/* 姓名/手机/邮箱/eid */,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID'
      },
      { title: '姓名', dataIndex: 'fullName' },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'userOID'
  },
  people_all: {
    title: messages('components.key3'/* 选择人员 */),
    url: `${config.baseUrl}/api/public/getAll`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1007')/* 工号/姓名/手机号/部门/邮箱/职位 */,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID'
      },
      { title: '姓名', dataIndex: 'fullName' },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'userOID'
  },
  user_all: {
    title: messages('components.key3'/* 选择人员 */),
    url: `${config.baseUrl}/api/public/getAllUser`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1370')/* 工号/姓名/手机/部门/邮箱/职位/eid */,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('components.key5'/* 工号 */), // 工号
        dataIndex: 'employeeID'
      },
      { title: '姓名', dataIndex: 'fullName' },
      {
        title: messages('components.key8'/* 部门名称 */), // 部门名称
        dataIndex: 'departmentName',
        render: value => <Popover placement="topLeft" content={value} overlayStyle={{maxWidth: 500}}>{value}</Popover>
      },
    ],
    key: 'userOID'
  },
  user_relation_car: {
    title: messages('components.key1361'/* 关联人列表 */),
    url: `${config.baseUrl}/api/public/getAllUser`,
    searchForm: [
      {
        type: 'input',
        id: 'keyword',
        label: messages('components.key1362')/* 关联人姓名/EID */,
        colSpan: 12
      },
    ],
    columns: [
      {
        title: messages('components.key1363'/* 关联人姓名 */), // 关联人姓名
        dataIndex: 'fullName'
      },
      {
        title: messages('components.keyC002'/* EID */), // EID
        dataIndex: 'employeeID',
      }
    ],
    key: 'userOID'
  },
};

export default chooserData;
